Regex 正则表达式提取空格之间的字符串
我是第一次使用正则表达式的新手。 给定一个包含多个单词的字符串,我需要提取第二个单词(单词=到空格之间的任何字符数) 我需要提取“Regex 正则表达式提取空格之间的字符串,regex,Regex,我是第一次使用正则表达式的新手。 给定一个包含多个单词的字符串,我需要提取第二个单词(单词=到空格之间的任何字符数) 我需要提取“baby” 我想我可以从这个开始:(\b\w*\b)匹配每个单词,但我不知道如何让它跳过第一个匹配。即使没有\b,你也可以这样做。 使用\w+\s+(\w+)并从捕获组1中读取单词 上述正则表达式: First mathes是一个非空的单词字符序列(第一个单词) 然后,它会在两个字符之间匹配一个非空的白字符序列(空格) 单词1和2 最后,捕获组只捕获第二个单词 请
baby
”
我想我可以从这个开始:
(\b\w*\b)
匹配每个单词,但我不知道如何让它跳过第一个匹配。即使没有\b
,你也可以这样做。
使用\w+\s+(\w+)
并从捕获组1中读取单词
上述正则表达式:
- First mathes是一个非空的单词字符序列(第一个单词)
- 然后,它会在两个字符之间匹配一个非空的白字符序列(空格) 单词1和2
- 最后,捕获组只捕获第二个单词
\s+(\w+)
是错误的,因为源字符串可以以空格开头
在这种情况下,这个正则表达式会捕获第一个单词。即使没有
\b
,也可以这样做。
使用\w+\s+(\w+)
并从捕获组1中读取单词
上述正则表达式:
- First mathes是一个非空的单词字符序列(第一个单词)
- 然后,它会在两个字符之间匹配一个非空的白字符序列(空格) 单词1和2
- 最后,捕获组只捕获第二个单词
\s+(\w+)
是错误的,因为源字符串可以以空格开头
在这种情况下,这个正则表达式会抓住第一个词。谢谢大家的建议, 我对你的正则表达式做了一些修改,终于找到了我需要的:
(?<=\s)(.*?)(?=\s)
(?谢谢各位的建议,
我对你的正则表达式做了一些修改,终于找到了我需要的:
(?<=\s)(.*?)(?=\s)
(?要得到“baby”,你可以做b\w*\y
。虽然我不明白你的意思,但我不知道如何跳过第一个匹配。你能试试(?请指定你在标记中使用的语言来得到“baby”您可以执行b\w*\y
。虽然我无法理解您的意思,但我不知道如何跳过第一个匹配。您可以尝试(?请指定您在标记中使用的语言