[英]string manipulation using split in javascript
"hello, my name is Jennifer and I live in texas, also I'm a student in.. "
采取上述字符串,我想產生以下輸出:
"my name is Jennifer and I live in texas, also I'm a student in.. "
在這種情況下,我不能像split(“,”)那樣使用split,因為問候語(hello)之后,句子中可能會有逗號。 我也不能使用子字符串,因為問候語可以在字符長度不同的光環中。
是否可以split(“,”)但僅對第一個逗號進行拆分?
您不必使用split
。 您可以這樣做:
str = str.replace(/^.*?,\s*/, '');
這是在第一個逗號之后返回什么。 正則表達式基本上是這樣做的。 從^
的開頭開始,使用非貪婪的表達式.*?
會搜索直到第一次出現為止的所有內容,
然后如果\\s*
之后碰巧有空格,也要刪除該空格。
var a = "hello, my name is Jennifer and I live in texas, also I'm a student in.. " ;
var b = a.split(",");
b.shift();
// c is what you are looking for
var c = b..join(",");
以下將返回一個僅在第一個逗號處拆分字符串的數組。
var temp = string.split(',')
var result = [temp.shift(), temp.join(',')]
獲取除首字符外的所有字符,包括',': var trimmed = str.slice(a.indexOf(',') + 2)
您可以使用如下形式:
function(msg,delimiter){
delimiter = delimiter ? delimiter : ","
var idx = msg.indexOf(delimiter) + delimiter.length
return msg.substring(idx)
}
如果未提供定界符,則默認為“,”
嘗試將.indexOf()
與參數" "
配合使用以匹配第一個空格字符.slice()
var str = "hello, my name is Jennifer and I live in texas, also I'm a student in.. "; var res = str.slice(str.indexOf(" ") + 1); console.log(res)
假設我們有:
var str = "one, two, three, four"
var sep = ", "
然后,如果找到子字符串sep
的第一個實例的.indexOf
,然后從該索引開始加上字符串sep
本身的長度,得到字符串的子字符串,則我們可以有效地產生字符串的其余部分,而無需拆分或使用正則表達式。
str.substr(str.indexOf(sep) + sep.length) // -> "two, three, four"
string.split(",", 2);
正如String.split(String,int)解釋的那樣:
如果您有更多的逗號,請使用一個正則表達式,獲取“除第一個逗號外的所有內容”。 所以:
string.split(/,(.+)?/)[1]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.