簡體   English   中英

js對象的正則表達式

[英]Regular expression for js object

我有一個字符串

{{ renderBlock("sometext1",{
    id:1555267
}) }}
{{ renderBlock("sometext2",{
    id:15553
}) }}
{{ renderBlock("sometext3",{
    content:"somecontent"
}) }}

所以,我需要從函數 renderBlock 中提取參數我可以解析第一個參數,但我無法解析第二個參數 - js 對象

正則表達式/{{ renderBlock\\("(.*)",{(.|\\n)[^)}]*/不起作用

我不知道您的字符串如何更改,但這適用於給出的示例:

renderBlock\("(.+)",((.|\n)+?)\)

第 1 組是第一個參數,第 2 組是第二個參數。

在這里試試吧!

第二個參數在花括號之間,也許這個正則表達式就是你要找的:

{{ renderBlock\\("(.*)",({(?:.|\\n)+?})

這將導致 2 個捕獲組。

我稍微調整了你的正則表達式。 嘗試這個

'{{ renderBlock("sometext3",{content:"somecontent"}) }}'.match(/{{ renderBlock\("(.*)"(,\{[^)]*\})\)*.*/)

正則表達式

/{{ renderBlock\("(.*)"(,\{[^)]*\})\)*.*/

暫無
暫無

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

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