匹配#标记但不匹配十六进制代码的Regex表达式
Regex expression that matches #tags but not hex codes
我正在尝试用JavaScript编写一个正则表达式,只要它以空格、八叉(#)和字符开头,它就会匹配任何字符串。但是,我希望此表达式排除十六进制代码。
我有一个捕捉#tags:的表达式
/(['s]#[^<'s]+)/g
我有一个表达式,它以我的大型程序将接收的格式(#xxxxxxx)捕获十六进制代码:
/(#[0-9a-fA-F]{6,6}'b)/g
但我不知道如何将它们组合在一起,这样我最终得到的匹配由第一个表达式描述,而不是由第二个表达式描述。
我希望在一个regex语句中完成所有操作。如果这不可能,我想知道一种方法,使用regex和JavaScript函数的组合来获得所有以#开头的非十六进制字符串。如果有帮助的话,我会使用jQuery和Backbone.js。
额外信贷:
这两者之间的区别是什么:
/(#[0-9a-fA-F]{6,6}'b)/g
这个:
/(#[0-9a-fA-F]{6}'b)/g
我一直在使用https://regex101.com编写和测试我的表达式,两者似乎给出了相同的结果。
您可以在第一个中使用第二个正则表达式作为负前瞻((?!
)
(?:'s|^)(#(?!['da-fA-F]{6}'b)[^<'s]+)
我在开始时添加了立即用哈希开始字符串的可能性,而不需要空格。
参见Regex测试仪
注意:{6,6}
确实与{6}
的捷径完全相同。如定期出口新闻所述。信息:
还有一个额外的量词,允许您指定一个令牌可以重复多少次。
语法为{min,max},其中min为零或表示最小匹配数的正整数,max是等于或大于min的整数,表示最大匹配数。[…]省略逗号和最大告诉引擎准确地重复最小次令牌。
相关文章:
- Regex代码只允许一个空格
- javascript中特定代码的Regex
- JavaScript-Regex删除代码/特殊字符/数字等
- RegEx:理解音节计数器代码
- Javascript Regex - 只影响非 html 代码?(即文本)
- 在Javascript Regex中,如何匹配哈希标签,但不与HTML代码匹配
- Regex未在服务器端验证的代码隐藏中工作
- Javascript regex在在线验证器上工作,但在代码中失败
- RegEx用于处理WordPress短代码
- 在Php代码中使用Regex
- 用于代码围栏标记的regex.简单吗
- REGEX-当内部内容有换行符时,HTML到短代码换行
- Regex在测试时返回组,但在代码中不返回
- Regex代码不能在ie浏览器上工作
- 用于过滤JS代码的python regex
- 使用回调和RegEx方法将JavaScript代码转换为c#中的等效代码
- Regex模式在Regex测试器中工作,但在实际代码中没有
- JavaScript Regex的代码围栏Markdown
- Regex在Javascript代码中不能正常工作
- Regex来匹配HTML标记内的属性,该标记可能包括php代码