[英]Extract the word before a specific character
bool processdata(Message_handler_t* );
我想从这个字符串中提取变量和参数,即processdata(Message_handler_t* )
我如何使用 python 和正则表达式来做到这一点。 我试过了,但它也提取了变量之前的单词
import re
txt = " bool processdata(Message_handler_t* )"
x = re.findall('\s.+\(.+\)', txt)
print(x)
正则表达式的另一种方法是使用分区方法
before_key, key, after_key = txt.partition('bool')
在这种情况下,output 将是 -
before_key=' '
after_key=' processdata(Message_handler_t* )'
显然,这里的关键是'bool'
而不是.+
你可以使用更精确的东西 - 即。 [a-zA-Z]+
或\w+
或[^ ]+
import re
txt = " bool processdata(Message_handler_t* )"
x = re.findall('\w+\(.+\)', txt)
print(x)
x = re.findall('[a-zA-Z]+\(.+\)', txt)
print(x)
x = re.findall('[^ ]+\(.+\)', txt)
print(x)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.