2017-01-23 29 views
0

我正在爲Python中的OSX做一個小小的autohotkey,我已經設法發送鍵盤輸入並獲得鍵盤輸入,但我堅持一點。我試圖例如使組合:正則表達式的字符串中的鍵盤鍵

1: {CTRL}1 
2: {CTRL}{SHIFT}12{CTRL} 
3: {CTRL}{SHIFT}b{CTRL} 

這些的人應該是那些檢測的,但我想設置每個項目正則表達式捕獲組串在大括號和之間的一切(一切出了大括號),這些你行應該非常捕獲以下內容:

1: '{CTRL}', '1' 
2: '{CTRL}', '{SHIFT}', '12', '{CTRL}' 
3: '{CTRL}', '{SHIFT}', 'b' 

我一直就這麼難Pythex和我似乎無法做任何我的正則表達式的正常工作。 Here's my Pythex attempt which didn't work out quite so well

回答

0

發現一切都沒有一撐,任選被括號括起來:

set(re.findall(r'(\{?[^}{]+\}?)', your_string)) 

set這麼多命令鍵裹只出現一次,但你可以刪除,如果你想要的。

+0

有沒有一種方法可以使用set()只在具有大括號的項目上? –

+0

不是我能想到的,但是如果s.startswith('{'))'和'[s對於s中的s不匹配s.startswith('{' )]' – mVChr

相關問題