Python正则表达式提取字符串从行
问题描述:
我在Python 3.4编程。 我正在读取不同文件中的行,并且当我到达包含特定字符串的行时,我只想从该行提取路径字符串。 例子:Python正则表达式提取字符串从行
文件行是:
TEST_CASE_CHECK = require("TestCases/AOL/TU_Extract_Log_Details")
我搜索:require("TestCases
我想只能提取:TestCases/AOL/TU_Extract_Log_Details
我知道这可以用正则表达式来完成,但我做不到弄清楚如何去做。
答
我不知道你行的其余部分看起来像但这应该工作
import re
s = 'TEST_CASE_CHECK = require("TestCases/AOL/TU_Extract_Log_Details")'
mat = re.search(r'(TestCases.*)"',s)
if mat:
print(mat.group(1))
TestCases/AOL/TU_Extract_Log_Details
+0
非常感谢!有效。 –
+0
@mariusalex如果这是您想要的解决方案,请不要忘记点击绿色检查。 – SirParselot
答
是不是你在找什么?
import re
p = re.compile(ur'require\("(TestCases[^"]*)')
test_str = u"TEST_CASE_CHECK = require(\"TestCases/AOL/TU_Extract_Log_Details\")"
re.findall(p, test_str)
答
import re
line = 'TEST_CASE_CHECK = require("TestCases/AOL/TU_Extract_Log_Details")'
result = re.match(r'.*require.+"([^"]*)".*', line)
print result.groups()[0] # prints "TestCases/AOL/TU_Extract_Log_Details"
请把你的尝试。 – SirParselot
看看[*提取双引号之间的字符串*](http://*.com/questions/22735440/extract-a-string-between-double-quotes),可能也适合你。 –