在我正在python中編寫的程序中,我希望所有格式化爲__word__
的單詞都能脫穎而出。我如何使用正則表達式來搜索這些單詞?創建Reg Exp來搜索__word__?
1
A
回答
4
也許類似
\b__(\S+)__\b
>>> import re
>>> re.findall(r"\b__(\S+)__\b","Here __is__ a __test__ sentence")
['is', 'test']
>>> re.findall(r"\b__(\S+)__\b","__Here__ is a test __sentence__")
['Here', 'sentence']
>>> re.findall(r"\b__(\S+)__\b","__Here's__ a test __sentence__")
["Here's", 'sentence']
或者你可以在這個詞的周圍放置標籤
>>> print re.sub(r"\b(__)(\S+)(__)\b",r"<b>\2<\\b>","__Here__ is a test __sentence__")
<b>Here<\b> is a test <b>sentence<\b>
如果您需要在法律的單詞字符更爲精細的控制,最好是明確
\b__([a-zA-Z0-9_':])__\b ### count "'" and ":" as part of words
>>> re.findall(r"\b__([a-zA-Z0-9_']+)__\b","__Here's__ a test __sentence:__")
["Here's"]
>>> re.findall(r"\b__([a-zA-Z0-9_':]+)__\b","__Here's__ a test __sentence:__")
["Here's", 'sentence:']
1
採取這裏squizz:http://docs.python.org/library/re.html
這應該告訴你的語法和從中可以建立字(S)前和檢查的例子後掛起2個下劃線。
0
0
這會給你所有這些單詞的列表
>>> import re
>>> m = re.findall("(__\w+__)", "What __word__ you search __for__")
>>> print m
['__word__', '__for__']
0
\b(__\w+__)\b
\b
字界
\w+
個一個或多個字符 - [a-zA-Z0-9_]
0
簡單字符串函數。沒有正則表達式
>>> mystring="blah __word__ blah __word2__"
>>> for item in mystring.split():
... if item.startswith("__") and item.endswith("__"):
... print item
...
__word__
__word2__
相關問題
- 1. REG EXP - 搜索()
- 2. javascript reg exp
- 3. Visual DataFlex Reg Exp
- 4. Reg Exp優化
- 5. 提取與reg exp
- 6. Bash reg-exp替換
- 7. 另一個Reg Exp
- 8. 爲reg-exp創建一個預定義的集合。 (gsub,grepl,...)
- 9. 如何使用reg exp
- 10. 的Javascript:更換REG EXP
- 11. 用Reg-Exp解析類名
- 12. Reg exp找到數字
- 13. 密碼驗證REG EXP
- 14. 的Javascript REG EXP不對
- 15. 如何使用reg exp
- 16. 使用reg exp搜索並替換數據庫中存在的電子郵件ID exp
- 17. 創建.reg文件
- 18. 搜索創建
- 19. 添加創建列來搜索critera?
- 20. 如何使用否定「?!」在grep reg exp
- 21. Reg Exp:僅匹配數字和空格
- 22. htaccess的REG EXP使用參數
- 23. REG EXP: 「如果」 和單一的 「=」
- 24. Python的REG EXP - 匹配號碼
- 25. 的Java REG EXP匹配模式
- 26. bash腳本REG-EXP和Objective-C
- 27. 需要一點reg-exp幫助
- 28. Oracle SQL Reg Exp檢查電子郵件
- 29. Php reg exp:匹配重複模式
- 30. Javascript Reg括號中的Exp號碼
這一款適合我的需求。 – 2010-02-16 04:39:14
'\ S'將匹配任何非空格字符(包括符號),所以'.__ + __。'將匹配。 – Amarghosh 2010-02-16 04:43:03
@Amarghosh,OP沒有指定「單詞」的含義,所以我將它解釋爲一串非空白字符。當然你可以使用'\ w'而不是'\ S',但是像__Here's__這樣的詞會被打破 – 2010-02-16 04:46:48