匹配所有内容直到括号

use*_*294 13 regex r

给出一个字符串 str = "Senior Software Engineer (mountain view)"

我怎么能匹配所有内容,直到我点到第一个括号,让我回到"高级软件工程师"

Div*_*com 22

您将使用^[^\(]+匹配,然后修剪它以删除尾随空格

  • @ user1103294请将此答案标记为已接受 (2认同)

Swa*_*adq 7

^[^\(]*

[^\(]是一个字符类,它匹配除了之外的所有内容(,并且*是一个贪婪的匹配,它尽可能多地匹配类.在^从字符串的开始,在开始处匹配.


mar*_*ius 5

为避免尾随空白,请尝试^.*?(?=\s\()

^(.*?)告诉它从字符串的开头开始匹配尽可能少的字符,然后(?=\s\()将匹配的另一端锚定到您的括号中,而不捕获它或它前面的空白。


Sve*_*ein 5

您可以在 R 中使用这个简单的正则表达式: *\\(.*

str <- "Senior Software Engineer (mountain view)"

sub(" *\\(.*", "", str)
# [1] "Senior Software Engineer"
Run Code Online (Sandbox Code Playgroud)

它还避免了尾随空格。