[英]How to get a specific string in JavaScript
我有:
var text = 'LTE CSSR (East xr) (301-LT_King_St_PC)'
我只想從(East xr) (301-LT_King_St_PC)拆分如下:
var result = text.split('(')
result = (East xr) (301-LT_King_St_PC)
您可以使用match
function 的正則表達式來完成此操作。 根據您想要的結果,嘗試以下方法之一:
var text = 'LTE CSSR (East xr) (301-LT_King_St_PC)' console.log('one string:', text.match(/\(.*\)/)[0]) console.log('array of strings:', text.match(/\([^\)]*\)/g))
第一個執行您似乎要求的操作-第一個(和第二個)之間的所有內容的單個 output 。 它通過搜索/\(.*\)/
來做到這一點,這是一個表示“括號之間的所有內容”的正則表達式。
第二個match
使用/\([^\)]*\)/g
將其拆分為所有帶括號的字符串,這是一個正則表達式,表示“每個帶括號的字符串”,但最后的g
表示“所有這些”,因此數組每個都給出。
您可以使用substring()
和indexOf()
來做到這一點:
var text = 'LTE CSSR (East xr) (301-LT_King_St_PC)'; var result = text.substring(text.indexOf('(')); console.log(result);
您與當前方法非常接近。 您可以嘗試的一種方法是在拆分中使用多個字符
var result = text.split(") (")
# Output -> result = ["(East xr", "301-LT_King_St_PC)"]
從這里開始,一些字符串操作可以擺脫括號。
或者,您也可以使用String.match
並加入其結果:
const text = 'LTE CSSR (East xr) (301-LT_King_St_PC)'; const cleaned = text.match(/\(.+[^\)]\)/).join(` `); console.log(cleaned);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.