簡體   English   中英

如何刪除字符串的第一個和最后一個字符

[英]How to remove the first and the last character of a string

我想知道如何刪除 Javascript 中字符串的第一個和最后一個字符。

我的 url 顯示/installers/我只想要installers

有時它會是/installers/services/而我只需要installers/services

所以我不能簡單地去掉斜線/

干得好

 var yourString = "/installers/"; var result = yourString.substring(1, yourString.length-1); console.log(result);

或者您可以按照Ankit Gupta的建議使用.slice

 var yourString = "/installers/services/"; var result = yourString.slice(1,-1); console.log(result);

slicesubstring的文檔。

使用slice可能會更好:

string.slice(1, -1)

我認為 jQuery 與此無關。 無論如何,請嘗試以下操作:

url = url.replace(/^\/|\/$/g, '');

如果你不總是有一個起始或尾部斜杠,你可以正則表達式它。 雖然正則表達式比簡單的替換/切片要慢,但它有更多的邏輯空間:

"/installers/services/".replace(/^\/?|\/?$/g, "") 

# /installers/services/ -> installers/services
# /installers/services -> installers/services
# installers/services/ -> installers/services

正則表達式解釋:

  • ['開始' ^ ] + [可選? ] + [斜線]: ^/? , 轉義 -> ^\/?
  • 管道 ( | ) 可以讀作or
  • ['以' $結尾] + [可選? ] + [斜線] -> /?$ ,轉義 -> \/?$

結合起來將是^/?|/$而不會轉義。 可選的第一個斜杠或可選的最后一個斜杠。
從技術上講,它不是“可選的”,而是“零次或一次”。

你可以這樣做:

"/installers/services/".replace(/^\/+/g,'').replace(/\/+$/g,'')

此正則表達式是具有與許多語言中使用的trim函數相同行為的常用方法。

修剪功能的可能實現是:

function trim(string, char){
    if(!char) char = ' '; //space by default
    char = char.replace(/([()[{*+.$^\\|?])/g, '\\$1'); //escape char parameter if needed for regex syntax.
    var regex_1 = new RegExp("^" + char + "+", "g");
    var regex_2 = new RegExp(char + "+$", "g");
    return string.replace(regex_1, '').replace(regex_2, '');
}

這將刪除字符串開頭和結尾的所有/ 它處理像///installers/services///這樣的情況

你也可以簡單地做:

"/installers/".substring(1, string.length-1);

您可以使用substring方法

s = s.substring(0, s.length - 1) //removes last character

另一種選擇是slice方法

如果您需要刪除字符串的第一個字母

string.slice(1, 0)

刪除最后一個字母

string.slice(0, -1)

使用.replace(/.*\/(\S+)\//img,"$1")

"/installers/services/".replace(/.*\/(\S+)\//img,"$1"); //--> services

"/services/".replace(/.*\/(\S+)\//img,"$1"); //--> services

它是更好的簡碼。

response.data.slice(1,-1) // "Prince"

-> Prince

以下正則表達式將刪除第一個和最后一個斜杠(如果存在)

var result = "/installers/services/".match(/[^/].*[^/]/g)[0];
url=url.substring(1,url.Length-1);

這樣,您可以使用目錄,如果它像 .../.../.../... 等。

暫無
暫無

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

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