簡體   English   中英

JavaScript中的正則表達式替換,用於轉義用單引號引起來的特殊字符

[英]Regex replace in JavaScript for escaping special characters enclosed in single quotes

在我的JavaScript文件中,我有一個變量,其值類似於以下內容

stringToBeReplaced = input[name='Wanna Be Startin' Somethin'']

stringToBeReplaced = input[name='They Don't Care About Us']

stringToBeReplaced = input[name='Workin' Day & Night']

該模式將始終像帶有*的input[name='*'] 我想要實現的是僅轉義*字段中出現的單引號和&符號('&),而不使用正則表達式替換轉義包含單引號的內容。

到目前為止,我已經形成的正則表達式如下,並且仍在等待中的是忽略上述模式中的第一個單引號。 即單引號前面有=號

stringToBeReplaced.replace(/((['&])(?!\]))/g,'\\$1'));

任何幫助深表感謝。

您可以這樣嘗試:

(?<!=)(['&])(?!])

(?<!=)否定=

(['&])在字符類中選擇所需的字符並在組中捕獲

(?!])負向展望]

用。。。來代替:

\\和捕獲的組

演示:

https://regex101.com/r/CQbwtF/5

暫無
暫無

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

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