Javascript 正则表达式限制字母表
我有一个字符串:Javascript 正则表达式限制字母表,javascript,html,regex,Javascript,Html,Regex,我有一个字符串: var str = "str is str, 12str345 and ABCstrDEF"; 我想捕获所有str,除了ABCstrDEF(str由字母字符包围) 是否可以使用正则表达式限制字母表?使用正则表达式 RegExp.quote = function(str) { return (str + '').replace(/([.?*+^$[\]\\(){}|-])/g, "\\$1"); }; var re = new RegExp("/\b[^a-zA-Z]*?
var str = "str is str, 12str345 and ABCstrDEF";
我想捕获所有str
,除了ABCstrDEF
(str
由字母字符包围)
是否可以使用正则表达式限制字母表?使用正则表达式
RegExp.quote = function(str) {
return (str + '').replace(/([.?*+^$[\]\\(){}|-])/g, "\\$1");
};
var re = new RegExp("/\b[^a-zA-Z]*?" + RegExp.quote(str) + "[^a-zA-Z]*?\b/g");
alert(input.match(re));
单独使用ABCstr或strDEF怎么样?还有,你试过什么?你能具体说明一下吗?如果它是一个“单词”(不是单词的一部分):
.match(/\bstr\b/g)
,或者如果它的前面或后面没有大写字母:.match(/(?![a-Z])(str)(?![a-Z])/g)
,或者它是要从匹配中排除的实际字母字符串,如在AXstrZY
中可以,但是ABstrCD不是吗?我的目标是排除所有在左边或右边有字母的“str”side@user1785360-它工作正常,因为^
在[^…]
@user1785360的开头-我已经用quote()更新了我的答案
函数,该函数应在您的str
包含一些特殊的正则表达式字符时使用。。。