python正则表达式匹配空格之前的字符串
时间: 2023-07-14 22:02:21 浏览: 344
当我们需要匹配空格之前的字符串时,可以使用正则表达式中的"匹配非空格字符"符号 "\S"。以下是一个示例代码:
```python
import re
text = "Hello World"
pattern = r'(\S+)\s*'
matches = re.findall(pattern, text)
if matches:
print(matches[0])
```
输出结果为:"Hello",即空格之前的字符串。在这个例子中,正则表达式模式`(\S+)\s*`表示匹配一个或多个非空格字符,然后跟零个或多个空格字符。通过调用`re.findall()`函数,我们可以获取到所有匹配的结果,并取第一个匹配结果即可。
相关问题
python 正则表达式 匹配这类字符串“static struct tc_action_ops *tc_lookup_action_n(char *kind)” 中‘(’的前一个空格与其之间的字符
可以使用以下正则表达式匹配:
```python
import re
s = "static struct tc_action_ops *tc_lookup_action_n(char *kind)"
pattern = r'(?<=\s)\S+(?=\()'
match = re.search(pattern, s)
if match:
print(match.group(0))
```
输出结果为:`*tc_lookup_action_n`。
解释一下正则表达式:
- `(?<=\s)`:表示匹配前面是空格的位置,但不包括空格本身。
- `\S+`:表示匹配一个或多个非空白字符。
- `(?=\()`:表示匹配后面是左括号的位置,但不包括左括号本身。
因此,使用正则表达式可以匹配到字符串中‘(’的前一个空格与其之间的字符。
python正则表达式去空格
以下是使用正则表达式去除字符串中的空格的Python代码示例:
```python
import re
# 定义一个包含空格的字符串
str_with_spaces = " This is a string with spaces. "
# 使用正则表达式去除空格
str_without_spaces = re.sub(r"\s+", "", str_with_spaces)
# 输出结果
print(str_without_spaces) # 输出:Thisisastringwithspaces.
```
在上述代码中,我们使用了re.sub()函数来替换字符串中的空格。其中,r"\s+"表示匹配一个或多个空格,""表示用空字符串替换匹配到的空格。最终,我们得到了一个不包含空格的字符串。
阅读全文