[英]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.