簡體   English   中英

3 While循環成一個循環?

[英]3 While Loops into a Single Loop?

我必須從HTML文本值中刪除逗號,句點和連字符。 我不想編寫所有這3個while循環,而是只希望一個循環(任何一個)來完成所有這一切。

我已經嘗試了一段時間,其中有多個&&,如果嵌套在其他位置,但我總是只會刪除逗號。

while(beg.indexOf(',') > -1)
{
    beg = beg.replace(',','');
    document.twocities.begins.value= beg;
}

while(beg.indexOf('-') > -1)
{
    beg = beg.replace('-','');
    document.twocities.begins.value= beg;
}
while(beg.indexOf('.') > -1)
{
    beg= beg.replace('.','');
    document.twocities.begins.value= beg;

}

您可以使用正則表達式來完成所有這些操作而無需循環。 這是使用單個正則表達式刪除所有這些字符的示例:

 let str = "abc,de.fg,hij,1-2,34.56.7890" str = str.replace(/[,.-]/g, "") console.log(str) 

使用正則表達式如下。

 let example = "This- is a,,., string.,"; console.log(example.replace(/[-.,]+/g, "")); 

一次調用replace函數並使用正則表達式就足夠了:

document.twocities.begins.value = beg = beg.replace(/[,.-]/g, "");

正則表達式是一種模式匹配語言。 這里采用的模式基本上說“人物之一的每次出現.,- )”。 請注意,斜杠/限制了模式,而后綴由控制匹配過程的標志組成-在這種情況下,它是g (全局),告訴引擎替換每個匹配項(與第一次不帶該標志的情況相反)。

該站點提供了大量有關正則表達式,它們在編程中的用法以及在不同編程環境中的實現的信息。

有多個在線站點可以測試實際的正則表達式及其匹配項(包括說明),例如。 正則表達式101

甚至更多的細節...;):您可以將.replace函數與字符串一起用作第一個參數(就像在代碼示例中所做的那樣)。 但是,只有第一次出現的搜索字符串將被替換-因此,您將不得不求助於循環。 .replace函數(通常是JS)的規范可以在這里找到。

首先,不需要循環。

您可以使用String.replace()替換字符串中的字符,並可以使用正則表達式確定要替換的字符和模式。

 let sampleString = "This, is. a - test - - of, the, code. "; console.log(sampleString.replace(/[,-.]/g, "")); 

暫無
暫無

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

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