你能在我想找到這個字符的字符之間找到一個子串svm嗎?我查看了Get string between two strings和Find string between two substrings。所以這是我的字串('svm', SVC())我想找到所有之間' '的結果,所以結果應該是svm或dct_test
import re
dict_SupportVectorMachine = {
"classifier": ('svm', SVC()),
"parameters": {'svm__C':[0.001,0.01,0.1,10, 100],
'svm__gamma':[0.1,0.01],
'svm__kernel':['linear', 'sigmoid']}
}
string = dict_SupportVectorMachine['classifier']
string2 = ('dct_test', ThisCouldbeLongerAndShorter())
subStr = re.findall(r"('(. ?)',",string)
print(subStr)
[OUT]
error: missing ), unterminated subpattern at position 0
uj5u.com熱心網友回復:
您擁有的是tuple2 個元素的 a :astr和一個SVC實體,只需獲取第一個索引
dict_SupportVectorMachine = {
"classifier": ('svm', SVC()),
"parameters": {}
}
classif = dict_SupportVectorMachine['classifier']
print(classif[0]) # svm
由于不同的問題,舊答案
括號是用于構建組的特殊字符,對于真正的括號你需要轉義它\(。也使用searchand not findallhere
import re
string = "('svm', SVC())"
print(re.findall(r"\('(. ?)',", string)) # ['svm']
print(re.search(r"\('(. ?)',", string).group(1)) # svm
string2 = "('dct_test', ThisCouldbeLongerAndShorter()))"
print(re.findall(r"\('(. ?)',", string2)) # ['dct_test']
print(re.search(r"\('(. ?)',", string2).group(1)) # dct_test
uj5u.com熱心網友回復:
似乎你錯過了)第四行的一個:
import re
string = "('svm', SVC())"
string2 = "('dct_test', ThisCouldbeLongerAndShorter()))"
subStr = re.findall(r"('(. ?))',",string)
print(subStr)
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/368169.html
下一篇:字典被新輸入覆寫
