楼主:
hunandy14 (Charlott.HonG)
2021-10-06 08:56:43/* 听说注明使用的语言、环境
* 问题有可能较容易被解决...
*/
环境是用 POWERSHELL 跑
文本是整份档案,这边撷取一部分作范例
文档.js
if ( a || b) {
var SQL = "select abc || abc";
}
目的是把整份档案的 || 改成 + 但是直接修的话连 IF 的判断也会动到
所以需要判断只修引号内的字串
想要的结果
if ( a || b) {
var SQL = "select abc || abc";
}
目前查到的只能把引号内容抓出来,不知道怎么进一步塞选出字串||
$ct -replace '(?<=").*?(?=")', '+'
作者:
Tabrith (血糖瑪çªæœµ)
2021-10-08 00:25:00powershell不能用||吧?还是新版可以了我不确定。再把if换回来 哈哈哈想到一个方法是你先把if(a||b)换成别的字串,然后换||,再把if换回来 哈哈哈 (上面漏推第二行直接跳到第三行了(没看到是.js文档 第一行是我会错意了)
作者:
LPH66 (-6.2598534e+18f)
2021-10-08 13:03:00一般来说这会需要抓“在字串里的 ||”然后用 backref 代换不过我不太确定 powershell 能不能做到这种代换...
作者:
art1 (人,原来不是人)
2021-10-10 16:21:00'(?<=").*?\|\|.*?(?=")' 试看看'(?<=").*?(\|\|).*?(?=")' 忘了要替换了 XD
作者:
cutekid (可爱小孩子)
2021-10-10 21:09:00作者:
art1 (人,原来不是人)
2021-10-10 22:41:00若有类似楼上的例子,左边 .*? 要改成排除左括号 [^(]*?右边 .*? 排除右括号 [^)]*? 看看
作者:
asglay (收收收尾)
2021-10-13 21:30:00引号中的||编到有命名的group里面 就可以存取该group
作者:
art1 (人,原来不是人)
2021-10-23 09:08:00如果是要替换 sql 引号内的||,那不如直接写 sql = 较明确sql=".+?(\|\|).+?(\|\|).+?" 这句可以针对你给的那个新例子