我有这样的文字。
Mr John Smith , Mr James Smith +(21)-(21)-12345678, 12345678, 12345678 +(21)-12345678, 12345678, 12345678 SomeTextHereAlso +(21)-(22)-12345678 www.somewebaddress.co.uk Some Title, Some Place , Some Town,Some Suburb, City - 100000
我想在 javascript 中使用正则表达式提取这些字符串中的每一个。我找到了一些例子,今天早上他们奏效了。现在我不知道为什么他们不再工作了。
提取
Mr John Smith , Mr James Smith
我用过这个。
/\S(.*)\+/ and /\S(.*?)\+/
这没有用。我不知道为什么。
提取这个
+(21)-(21)-12345678, 12345678, 12345678 +(21)-12345678, 12345678, 12345678 SomeTextHereAlso +(21)-(22)-12345678
我用过这个。
/\+(.*)(?=www.)/
这确实奏效了。
对于我使用的网址
/www(.*?)(?=\s\s)/
这也有效。
唯一的问题是第一个示例应该提取到第一个 + 之前的所有字符,但它会提取到最后一个 + 之前的所有字符。
我检查了http://gskinner.com/RegExr/?2tr5t并且我在这里展示的示例有效。自从我查看代码并没有发现任何错误以来,是否还有更多类似的示例可以帮助我。
如果正则表达式很好,那么我如何在这个例子中使用 IndexOf() 方法来提取我想要的东西?