簡體   English   中英

搜索模式並將其替換為數據庫中的正則表達式

[英]Search a pattern and replace it with regex in database

在數據庫中,我試圖提取數據並將其替換為不同的代碼。

數據看起來像這樣(單行),它以一組 (a.jpg) 到 8 (h.jpg) 排列。 a、ab、abc、abcd、abcde、abcdef、abcdefg、abcdefgh。

[team url=\"//SITEURL/images/year/month/IMAGENAMEa.jpg\" style=\"meta_overlaid\" name=\"NAME 1\"]
[team url=\"//SITEURL/images/year/month/IMAGENAMEb.jpg\" style=\"meta_overlaid\" name=\"NAME 2\"]
[team url=\"//SITEURL/images/year/month/IMAGENAMEc.jpg\" style=\"meta_overlaid\" name=\"NAME 3\"]
[team url=\"//SITEURL/images/year/month/IMAGENAMEd.jpg\" style=\"meta_overlaid\" name=\"NAME 4\"]
[team url=\"//SITEURL/images/year/month/IMAGENAMEe.jpg\" style=\"meta_overlaid\" name=\"NAME 5\"]
[team url=\"//SITEURL/images/year/month/IMAGENAMEf.jpg\" style=\"meta_overlaid\" name=\"NAME 6\"]
[team url=\"//SITEURL/images/year/month/IMAGENAMEg.jpg\" style=\"meta_overlaid\" name=\"NAME 7\"]
[team url=\"//SITEURL/images/year/month/IMAGENAMEh.jpg\" style=\"meta_overlaid\" name=\"NAME 8\"]

有了這個,我能夠選擇一個塊,因此第 1 組和第 3 組是所需的數據。

\[team url=\\"(.+?)\\"(.+?)name=\\"(.+?)\\"(.*?)\]

如果我想要一個 abc 模式,提取數據並替換它,下一個就可以了,但如果我需要 abcd、abcde、...到 abcdefgh 就不行了。

在這里,第 1、3、5、7、9 和 11 組是我需要的數據。

\[team url=\\"(.+?)a\.jpg\\"(.+?)name=\\"(.+?)\\"(.*?)\]\[team url=\\"(.+?)b\.jpg\\"(.+?)name=\\"(.+?)\\"(.*?)\]\[team url=\\"(.+?)c\.jpg\\"(.+?)name=\\"(.+?)\\"(.*?)\]

我以為我可以為其他組創建一個類似的集,但似乎有一個限制,Atom 和 Sublime Text 停止搜索。

必須有更好的方法來搜索、分組和提取,但我迷路了。

希望我能夠解釋自己,感謝您的時間和建議。

在 Sublime Text 中,您對組沒有限制。

如果您在第九個之后需要反向引用,請使用${10}${11}等。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM