2017-04-05 61 views
0

字符串"MM/DD/YYYY".replace(/.?YYYY.?/, '');在Chrome中返回MM/DD,但Safari返回空字符串。這是爲什麼?哪種方法在所有瀏覽器中統一工作?替換字符串在safari中不起作用

+1

只是好奇爲什麼使用正則表達式試圖取代它。我的意思是爲什麼不只是string.replace('/ YYYY',''); – hafridi

+0

YYYY可能位於字符串的任何地方,甚至從頭開始..一個正則表達式, – prem89

+1

有趣。如果你刪除尾部。?沒事。什麼是拉斯維加斯?準確地做?似乎要刪除這個。 – epascarello

回答

-2

我以前有同樣的問題。我添加了一個空字符串,然後它工作。出於某種原因,我不得不爲Safari添加一個空字符串來確認變量是一個字符串。

var date =「mm/dd/yyyyy」+「」, 然後做 - 「date」.replace(/。?YYYY.?/,'');

+0

nope does not work .. format = format +''; format = format.replace(/。?YYYY.?/,''); – prem89

+0

我試過刪除「。?」在yyyy之後替換方法。它在safari和chrome中爲我工作。只是嘗試使用「MM/DD/YYYY」.replace(/。?YYYY /,''); –

-2

您是否檢查過在您的項目和瀏覽器中使用的字符集?

+0

這有什麼關係?你能否提供一個它如何重要的例子? – prem89

+0

最近,由於UTF-8上的特殊字符和第三方應用中的另一個字符集,我在字符串格式設置上的一個項目上出現了類似的問題。替換方法找不到我正在查找的確切字符。 –

+0

例如:「空間」字符和「%20」。 –