在字符串中查找匹配并获得所有预期匹配

时间:2016-11-15 17:45:19

标签: regex

你好我想找到像这样的单词" total-games"在字符串类似"总游戏 - 超过19-5",所以我需要检查字符串中是否存在总游戏,如果存在,那么获取此单词之前和之后的所有内容,是否可能?谢谢你的任何想法! :)我试过使用preg_match,但正则表达式对我来说有点问题。

抱歉,我忘记了我需要用PHP语言,无论如何我的正则表达式是(。)总游戏(。)?

基本上我可以使用像

这样的东西
if(preg_match('(.*)total-games(.*)',$string, $matches))
{
   // and get matches like $matches[0] .. etc?
}

PS:先生,你的正则表达式对我不起作用,如果以某种方式连接,我使用了preg_match函数。

2 个答案:

答案 0 :(得分:0)

您的正则表达式应为(.*)total-games(.*),然后根据编程语言,您可以提取组。 就像在Python中一样

import re
str = "total-games-over-19-5"
r = re.compile(r"(.*)total-games(.*)")
m = re.match(r, str)
print(m.group(1) + "---" + m.group(2))

此处m.group(1)将为空,因为字符串中的总游戏之前没有任何内容。

答案 1 :(得分:0)

使用此正则表达式:

xyz
总是匹配的

,但是第1组和第2组,其中包含"之前" """"如果输入内容不包含"总游戏"

,则文字将为空白。