正则表达式:带有重复字符
Regex: with repeated characters
我正在尝试捕捉一个单词中每两个重复的字符。我试过这个:
(\w)+
但出于某种原因,它只捕捉到前两对。例如:单词 "hellokitty",它会捕获 "ll" 并忽略另一个 "tt",如在 regex101
中测试的那样
全局匹配需要使用修饰符g
:
/(\w)/g
如果你想多次重复一个正则表达式,你必须使用 global
标志。在 Regex101 上,只是将 g
放在正则表达式旁边的框中。
如何在代码中使用它取决于您使用的语言。
Javascript
/pattern/flags
new RegExp(pattern[, flags])
示例:
regex = /(\w)+/g;
regex = new RegExp("(\w)+", "g");
Python
re.compile(pattern, flags=0)
但是 python 没有 global
标志。要查找所有事件,请使用:
re.compile("(\w)+")
re.findall("Hellokitty")
这 returns 一组火柴。
g
标志将使您的正则表达式 global
或重复。
/(\w)+/g
Demo
如果你想让它避免重复三次,你可以删除 +
:
/(\w)/g
Demo
我正在尝试捕捉一个单词中每两个重复的字符。我试过这个:
(\w)+
但出于某种原因,它只捕捉到前两对。例如:单词 "hellokitty",它会捕获 "ll" 并忽略另一个 "tt",如在 regex101
中测试的那样全局匹配需要使用修饰符g
:
/(\w)/g
如果你想多次重复一个正则表达式,你必须使用 global
标志。在 Regex101 上,只是将 g
放在正则表达式旁边的框中。
如何在代码中使用它取决于您使用的语言。
Javascript
/pattern/flags
new RegExp(pattern[, flags])
示例:
regex = /(\w)+/g;
regex = new RegExp("(\w)+", "g");
Python
re.compile(pattern, flags=0)
但是 python 没有 global
标志。要查找所有事件,请使用:
re.compile("(\w)+")
re.findall("Hellokitty")
这 returns 一组火柴。
g
标志将使您的正则表达式 global
或重复。
/(\w)+/g
Demo
如果你想让它避免重复三次,你可以删除 +
:
/(\w)/g