使用键模式和使用Ruby的分隔符从字符串中提取子字符串

时间:2017-02-10 15:26:15

标签: ruby regex

如何使用键模式和分隔符从字符串中提取子字符串。 e.g。

mystring = 'toto=1,2,3 mynames=ralf,john,franky myhobbies=tennis,soccer,naps'
  • 我想提取:ralf,john,franky
  • 此处的模式为:mynames
  • 分隔符为:=

1 个答案:

答案 0 :(得分:0)

您可以使用此正则表达式:

mynames=([^\s]+)

然后,寻找第一组:$1

以下是JavaScript中的实际示例(也适用于其他语言):



var regex = /mynames=([^\s]+)/;
var text = "toto=1,2,3 mynames=ralf,john,franky myhobbies=tennis,soccer,naps"

console.log(regex.exec(text)[1]);




如果您正在寻找仅匹配mynames=之后所有内容的正则表达式,这样您就不需要寻找第一组,您也可以使用正面的背后隐藏:

(?<=mynames=)[^\s]+

以下是一个实例:https://regex101.com/r/mem6mA/1