python正则表达式匹配字符串中间包含字符‘-’ 比如‘我-你-他’
时间: 2023-10-13 08:05:01 浏览: 44
可以使用正则表达式中的字符集合([])来匹配包含‘-’的字符串。例如:
```python
import re
string = '我-你-他'
# 匹配包含‘-’的字符串
match = re.search(r'\w+-\w+-\w+', string)
if match:
print(match.group(0))
else:
print('No match')
```
输出结果为:‘我-你-他’
在正则表达式中,`\w+`表示匹配一个或多个字母、数字或下划线,`-`表示匹配一个连字符。将它们放在一起,就可以匹配包含‘-’的字符串了。
相关问题
python正则表达式匹配字符串中间包含字符‘-’
可以使用正则表达式中的字符组来匹配字符串中间包含字符‘-’,具体方法如下:
```python
import re
s = "abc-123-def"
# 匹配中间包含字符'-'的字符串
pattern = r"[a-zA-Z0-9]+-[a-zA-Z0-9]+"
result = re.findall(pattern, s)
print(result) # ['abc-123-def']
```
上述代码中,我们使用正则表达式中的字符组 `[a-zA-Z0-9]` 来匹配字母和数字,然后在字符组之间加上 `-` 来匹配中间包含字符‘-’的字符串。使用 `re.findall()` 函数可以找到所有匹配的字符串,并以列表的形式返回。
python正则表达式匹配字符串中间包含字符‘-’ 任意次数 比如‘我-你-他’
可以使用正则表达式中的字符组(character set)来匹配任意次数的连字符(-)。以下是一个示例正则表达式:
```python
import re
s = "我-你-他"
pattern = r"\w+-\w+(-\w+)*"
matches = re.findall(pattern, s)
print(matches)
```
这个正则表达式可以匹配由多个单词和连字符组成的字符串,其中连字符可以出现任意次数。`\w+` 表示匹配一个或多个单词字符,`-` 表示匹配一个连字符,`(-\w+)*` 表示匹配零个或多个连字符后跟一个或多个单词字符的组合。使用 `re.findall()` 函数可以找到所有符合条件的字符串。在上面的示例中,输出结果为 `['我-你-他']`,表示正则表达式成功匹配了整个字符串。