正则表达式 选中以某些字符开始,某些字符结尾的字符串
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了正则表达式 选中以某些字符开始,某些字符结尾的字符串相关的知识,希望对你有一定的参考价值。
例如
选择所有ab开头12结尾的字符串
如vvab00012vv
则选中ab00012 (注意:ab和12也选中)
求解这个应该怎么用正则表达式实现
主要是用正则表达式的分组匹配技术。
1、以某字符结尾:例如sex$;
2、中间不包含该字符串:^((?!sex).*)
3、最后合起来就是:^((?!sex).*)sex$
“正则表达式”选中以某些字符开始,某些字符结尾的字符串?的含义如下:
字符 含意:\\ 做为转意,即通常在"\\"后面的字符不按原来意义解释,如/b/匹配字符"b" ,当b 前面加了反斜杆后/\\b/,转意为匹配一个单词的边界。-或-对正则表达式功能字符的还原,如"*"匹配它前面元字符0次或多次,/a*/将匹配a,aa,aaa ,加了"\\"后,/a\\*/将只匹配"a*"。
^ 匹配一个输入或一行的开头,/^a/匹配"an A",而不匹配"An a"
$ 匹配一个输入或一行的结尾,/a$/匹配"An a",而不匹配"an A"
* 匹配前面元字符0次或多次,/ba*/将匹配b,ba,baa,baaa
+ 匹配前面元字符1次或多次,/ba*/将匹配ba,baa,baaa
? 匹配前面元字符0次或1次,/ba*/将匹配b,ba
(x) 匹配x 保存x 在名为$1...$9的变量中x|y 匹配x 或y,n 精确匹配n 次,n, 匹配n 次以上
n,m 匹配n-m 次,[xyz] 字符集(character set),匹配这个集合中的任一一个字符(或元字符)
[^xyz] 不匹配这个集合中的任何一个字符,[\\b] 匹配一个退格符,\\b 匹配一个单词的边界
\\B 匹配一个单词的非边界,\\cX 这儿,X 是一个控制符,/\\cM/匹配Ctrl-M。
参考技术A 匹配以abc开头,以xyz结尾的字符串abc.*xyz 等价于 abc(.*)xyz
解释:
.匹配除换行符 \n 之外的任何单个字符。 若要匹配包括 \n 在内的任意字符,请使用诸如 [\s\S] 之类的模式。
*零次或多次匹配前面的字符或子表达式。等效于 0,。 参考技术B ^ab[\w]+12$
如果是整个连续的:\bab[\w]+12\b也行,如果有非字符,可用.+ 参考技术C ab.*?12
ab开头12结尾追问
这样不能做到以ab开头啊,我说的开头是段落的开头
上面的例子不太恰当,抱歉
是
1ab12 不选中
ab12 选中ab12
js正则表达式过滤以指定字符开头以指定字符结尾的文本内容
参考技术A 从后台获取的html片段,图片可能会出现图片的宽度超过屏幕宽度
需要改变图片的宽度,
把图片的宽过滤成width:100%就行
var richtext =JSON.stringify(res.data.data.noticeContent) ;
richtext= richtext.replace(/\width:.*?\px/g, `width: 100%`);
this.ArticleContent = JSON.parse(richtext)
注意从后台获取数据格式的转换
以上是关于正则表达式 选中以某些字符开始,某些字符结尾的字符串的主要内容,如果未能解决你的问题,请参考以下文章