如何对以:
标点符号开头的所有单词使用正则表达式?
这会使所有单词以a
开头:
\ba\w*\b
我将字母a
更改为:
的那一刻,整件事情都失败了。我应该逃离结肠,如果是这样,怎么办?
答案 0 :(得分:4)
\b
匹配非字母数字和字母数字字符,因此如果您将其放在:
之前,则只有在冒号前面有一个字母/数字时才会匹配。
因此,您需要在此处删除\b
或指定在这种情况下确切构成边界的内容,例如:
(?<!\w):\w*\b
这将确保:
之前没有字母/数字/下划线。当然,这假设了一种支持lookbehind断言的正则表达式。
答案 1 :(得分:2)
问题是当单词以冒号\b
开头时:
与单词的开头不匹配,因为冒号不是单词字符。试试这个:
(?<=:)\w*\b
这使用(非捕获)look-behind断言前一个字符是冒号。