組,正則表達式在Notepad ++中的括號內排除文本++搜索替換
這是我的第一篇文章。我喜歡使用Notepad ++進行cnc程序g代碼編輯。有時候一個程序將包含文本之間沒有空白的文字。註釋包含在括號內。有時候線包含註釋,但大多數時候並不:
G90G10L2P1X-38.046Y-11.361Z-36.991(G54 B=0)
G90G10L2P1X5.68Y5.69
G54G00G90X0.0Y-5.0T53
G43H55Z6.0M8
S300M03
此正則表達式將添加的所有單詞之間的空間,但跳過帶有括號結尾的行:
搜索:(.)([A-Z])(?!.*\))
更換: \1 \2\3
到目前爲止好。我想要的是在所有單詞之間添加空格,只排除註釋,而不是像上面那樣跳過包含註釋的整行。
任何想法或幫助將不勝感激!我一直在玩這個遊戲,並且搜索了很多,但沒有成功。
**編輯我的貼子來展示更復雜的例子15年4月8日:
(FILE NAME XY9032.010)
(SUB PR.321.322.323.327.328.329.325.324)
(** NONSENSE COMMENT TEXT 324 TO SHOW A DIFF POSSIBLE COMB AB 2/25/15 **)
N1(STORE TOP BOSS G55.X)
N2(STORE BOT. BOSS G55.X)
N3(STORE BOT. BOSS G55.Y)
G00G17G40G49G80G90
G91G28X0Y0Z0.M05
G90G0B0
N4G90G10L2P5X-38.046Y-11.361Z-37.021(G58 B0 BOTTOM BORES)
N5G90G10L2P6X-23.130Y-11.361Z-44.027(G59 B180 BOTTOM BORE)
G90G10L2P1X#568Y#569
G54G00G90X0.0Y-5.0T53
G43H55Z6.0M8
S300M03
Z.6
N6G01Z.015F50.
G01Y-7.0F9.0
G02J7.0F18.0
G00Z6.0M09
G91G28X0Y0Z0M05
M1
這個小正則表達式會發現括號之間的所有文本實例:
(\(.+\))
例如,搜索:
(\(.+\))
替換:
\1****
將在文本文件中的括號的每個實例之後添加星號。
我只是不能弄清楚從本文其他地方描述的更廣泛的搜索中排除相同的正則表達式表達式。
這不起作用 - 仍然在圓括號內添加空格。強調=空間:
Search: (?!\(.+\))([a-z]-?\d+(?:\.\d+)?)
Replace: $1_
你可能想添加正則表達式標籤。 – 2015-04-02 17:31:32
什麼是你的「單詞」?預期的結果是什麼? – Toto 2015-04-02 17:42:48
在一個cnc程序中,一個單詞是一個字母后跟數字。 – Diedesigner 2015-04-02 17:44:33