簡體   English   中英

正則表達式在javascript上不匹配,但在其他語言上匹配

[英]regular expression not matching on javascript but matches on other languages

所以我一直在各地正則表達式運行一段時間了,並且使用了RegEx101來測試我的模式,它從來沒有(還)。

因此,我正嘗試通過正則表達式將android Emojicons字符串替換為其適當的HTML圖像,該代碼似乎在上面的站點中沒有問題就可以匹配,甚至可以與PHP一起使用,但是無論如何,它在javascript中根本不匹配。 ..這是我的代碼:

function loadEmojisInMessage(message) {
    var regExp = /({emoji:(.*?)})/g; //var regExp = new RegExp("({emoji:(.*?)})","g");
    message.replace(regExp, '<img src="emojis/emoji_$2.png" id="$2" class="emojicon" />').toString();
    return message;
}

起初我以為我做錯了,所以我將代碼更改為此,僅用於測試

function loadEmojisInMessage(message) {
    var regExp = /({emoji:(.*?)})/g; //var regExp = new RegExp("({emoji:(.*?)})","g");
    message.replace(regExp, 'test?').toString();
    return message;
}

但即使這樣並不能取代在所有! (我想這是一個與字符串:/匹配的問題。)

匹配的示例字符串:

{emoji:em_1f50f}

我在這里試圖用圖像HTML標簽替換整個字符串(上方),同時使用第二個匹配項[URL字符串的第二個括號()]

最好的祝福


更新:我忘記添加第一個匹配的括號,對不起!

另外,您可以在此處測試模式

您沒有將replace()方法調用的結果分配給變量message 如果您不這樣做, message保持不變。

message = message.replace(regExp, '<img src="emojis/emoji_$2.png" id="$2" class="emojicon" />');

暫無
暫無

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

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