Javascript正则表达式:如何查找匹配的长度
Javascript regex: How to find length of a match?
我有一项任务要为C#编写代码highlighter。一切都很好,但我希望优化缩进。所以,我有一个看起来像/('t|[ ]{4})/g
的正则表达式,所以我用<span style="margin-left: 2em;" />
替换了制表或4个空格字符,它看起来不错,但它会产生很多不必要的跨度。我想使用类似/^[ ]{x}/g
的东西,并用<span style='margin-left: "+(0.5*x)+"em;' />
替换,以便每行只有一个跨度,并具有适当的裕度。str.match()
不起作用,因为它搜索所有文档,而不是每行。
如果正则表达式有g
标志,您可以反复执行它,从字符串中获取所有匹配项,包括匹配项的长度:
var re = /^('t|[ ]{4})/g;
var match;
while((match = re.exec(text)) {
// use match.index and match[0].length
}
相关文章:
- 键按正则表达式以查找具有负值的小数
- 查找所有注释的JavaScript正则表达式
- 模仿负查找以匹配JavaScript正则表达式中没有紧跟特定字符的模式
- 查找大写字母的简单正则表达式是返回小写字母
- 如何查找正则表达式的哪个部分/组失败
- 为什么正则表达式查找“;t〃;在“;乔治亚州”;使用Angular$sce
- 使用正则表达式查找字符串中的不匹配字符
- 使用正则表达式查找字符模式
- 用于在组合文件中查找 AMD 定义呼叫的正则表达式
- 什么'用这个正则表达式查找URL是错误的
- 用于查找参数的Javascript中的正则表达式
- JavaScript:是否有完全支持查找的正则表达式库
- 使用正则表达式在方括号内查找多个字符
- 正则表达式查找字符串并返回大括号之间的所有内容
- 如何使用正则表达式查找对象成员名称
- 查找正则表达式
- JavaScript-如何在字符串中查找正则表达式的所有实例
- 如何查找正则表达式的部分-整数
- Regex查找正则表达式标志和搜索模式
- 在javascript代码字符串中查找正则表达式字面量