簡體   English   中英

使用JavaScript中的通配符從字符串中獲取子字符串

[英]Get a substring from a string using a wildcard in javascript

我有一個字符串/test/file/sometext/public/image和第二個字符串/test1/file/sometext1/public/image1

我想要從file開始到public結束的子字符串。

因此,第一個字符串應返回file/sometext/public/ ,從第二個字符串應返回file/sometext1/public/

在每個字符串中,此filepublic是靜態的。

如何在javascript中執行此操作?

基本上我需要這個

str = '/test/file/sometext/public/image';
var str1 = str.replace("file/sometext/public/", "");

但是我這里需要一個通配符,以便filepublic之間的任何文本都可以替換為某些文本。 希望你明白我的意思。

您可以使用split()將字符串拆分為字符串數組,而slice()則將數組的一部分的淺表副本返回到新的數組對象中,最后通過join()將數組的所有元素連接到最后一個字符串:

 var parts = '/test/file/sometext/public/image'.split('/'); console.log( parts.slice(2, 5).join('/') ); 

如果所有字符串都遵循相同的文件夾結構,則可以將它們拆分為一個數組,並用所需的部分重建它,如下所示:

 var arr = str = '/test/file/sometext/public/image'.split('/'); var str1 = arr[2] + '/' + arr[3] + '/' + arr[4] + '/'; console.log(str1); 

您可以使用正則表達式來做到這一點。

 var str = '/test/file/sometext/public/image'; var reg = /file\\/[^\\/]*\\/public/i; var replace = str.replace(reg, 'something'); console.log('before',str); console.log('after',replace); 

暫無
暫無

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

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