我是正则表达式的新手,我第一次使用它们。 给定一个包含多个单词的字符串,我需要提取第二个单词(word =空格之间的任意数量的字符)。
baby
我需要提取“(\b\w*\b)
”
我想我可以从这开始:{{1}}匹配每个单词,但我不知道如何让它跳过第一场比赛。
答案 0 :(得分:0)
即使没有\b
,您也可以这样做。
使用\w+\s+(\w+)
并阅读捕获组1中的单词。
上面的正则表达式:
请注意\s+(\w+)
是错误的,因为源字符串可以以空格开头
在这种情况下,这个正则表达式会抓住第一个字。
答案 1 :(得分:0)
感谢建议伙伴, 我修改了一点你的正则表达式,我终于找到了我需要的东西:
(?<=\s)(.*?)(?=\s)
这一个(?<=.)(\b\w+\b)
也有点好,但是如果我有像“你好我的爱”这样的字符串将“ba-by”分成“ba”和“by”,就会失败。