查找具有指定首字母的单词(正则表达式)
我需要正则表达式来查找以字母“B”或“b”开头的单词。在句子 Bword abword bword
中,我需要找到 Bword
和 bword
。 我当前的正则表达式是:[Bb]\w+
(第一个字符是空格),但它找不到Bword
。
提前致谢。
I need regex to find words starting, for example, whith letters "B" or "b". In sentence Bword abword bword
I need to find Bword
and bword
.
My curresnt regex is: [Bb]\w+
(first character is space), but it doesn't find Bword
.
Thanks in advance.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
尝试使用以下正则表达式:
(?i)\bB\w*\b
这意味着:
(?i)
- 打开忽略大小写选项\b - 单词中的第一个或最后一个字符
B
\w*
- 字母数字,任意次数的重复\b
- 单词中的第一个或最后一个字符一个单词所以它会找到
Bword
并且bword
。Try using following regex:
(?i)\bB\w*\b
It means:
(?i)
- turn on ignore case option\b
- first or last character in a wordB
\w*
- Alphanumeric, any number of repetitions\b
- first or last character in a wordSo it will find
Bword
andbword
.您可以使用单词边界模式
\b
来匹配单词之间的边界或开始/结束:You can use the word boundary pattern
\b
to match boundaries between words or start/end:其模式应该是 - "[Bb]\w+"
您需要在正则表达式中转义反斜杠(使用另一个反斜杠)。 \b --> \b
The pattern for that should be - "[Bb]\w+"
You need to escape the backslashes (with another backslash) in a regular expression. \b --> \b