Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javascript-查找字符串中类型的最后一个字符_Javascript_Jquery_String_Text_Replace - Fatal编程技术网

javascript-查找字符串中类型的最后一个字符

javascript-查找字符串中类型的最后一个字符,javascript,jquery,string,text,replace,Javascript,Jquery,String,Text,Replace,我在一个网站上得到了一些自动生成的文件夹的名称 它们的名称如下: "folder_photos_today_1" "folder_photos_yesterday_2" "folder_photos_future_3" ... "folder_potos_more_11" 每个名称末尾的数字是由插件生成的文件夹ID 现在我想显示以下文件夹名称: "folder photos today" "folder photos yesterday" 用javascript转换名称(pureJS或jQu

我在一个网站上得到了一些自动生成的文件夹的名称

它们的名称如下:

"folder_photos_today_1"
"folder_photos_yesterday_2"
"folder_photos_future_3"
...
"folder_potos_more_11"
每个名称末尾的数字是由插件生成的文件夹ID

现在我想显示以下文件夹名称:

"folder photos today"
"folder photos yesterday"
用javascript转换名称(pureJS或jQuery,没关系),我考虑在名称中找到最后一个
,然后删除它和后面的所有内容。然后搜索其他
\uu
并用空格替换它们

我的问题是: 如何使用JS查找一种类型的最后一个字符(最后一个

var index = "folder_photos_future_3".lastIndexOf('_');  // returns 20
然后,您可以使用子字符串将
替换为空格

您还可以
split()
您的字符串并放弃最后一个值:

var words = "folder_photos_future_3".split('_');
words.pop();
words.join(' '); // "folder photos future"
lastIndexOf()
就是您想要的:

var index = "folder_photos_future_3".lastIndexOf('_');  // returns 20
然后,您可以使用子字符串将
替换为空格

您还可以
split()
您的字符串并放弃最后一个值:

var words = "folder_photos_future_3".split('_');
words.pop();
words.join(' '); // "folder photos future"

这一行不是更简单吗

"folder_photos_today_12".replace(/_[0-9]+/g,"").replace(/_/g," ");

以下是一些解释:

.replace(/_[0-9]+/g,"") 
替换下划线和后面多个一位数的组合,因此今天您将拥有此字符串
文件夹\u photos\u

.replace(/_/g," ")

替换字符串中的所有下划线:
今天的文件夹照片

这一行不是更简单吗

"folder_photos_today_12".replace(/_[0-9]+/g,"").replace(/_/g," ");
.replace(/_/g," ")

以下是一些解释:

.replace(/_[0-9]+/g,"") 
替换下划线和后面多个一位数的组合,因此今天您将拥有此字符串
文件夹\u photos\u

.replace(/_/g," ")

替换字符串中的所有下划线:
今天的文件夹照片

希望此plunker链接对您有所帮助

.replace(/_/g," ")

var splitFunction=function(){
var arr=[“文件夹\u照片\u今天\u 1”,
“文件夹\u照片\u昨天\u 2”,
“文件夹\照片\未来\ 3”,
“文件夹四张照片四张”,
“文件夹五张照片五张”,
“文件夹(照片)(六张)(六张)”,
“文件夹(照片)(七张)(七张)”,
“文件夹\照片\八张\八张”,
“文件夹(照片)(9)”,
“文件夹\u照片\u十\u 10”,
“文件夹_potos_more_11”];
var-res=[];
document.getElementById('result').innerHTML=“结果:

对于(var i=0;我希望此plunker链接将对您有所帮助

var splitFunction=function(){
var arr=[“文件夹\u照片\u今天\u 1”,
“文件夹\u照片\u昨天\u 2”,
“文件夹\照片\未来\ 3”,
“文件夹四张照片四张”,
“文件夹五张照片五张”,
“文件夹(照片)(六张)(六张)”,
“文件夹(照片)(七张)(七张)”,
“文件夹\照片\八张\八张”,
“文件夹(照片)(9)”,
“文件夹\u照片\u十\u 10”,
“文件夹_potos_more_11”];
var-res=[];
document.getElementById('result').innerHTML=“结果:

对于(var i=0;i两种解决方案都能完全满足我的需要,我也能理解正在发生的事情,非常感谢!两种解决方案都能满足我的需要,我也能理解正在发生的事情,非常感谢!这似乎也起到了作用。但我必须说,我想知道
替换
大括号中发生了什么。字符组合对m来说是新的e、 (我不是JS专业人士)这似乎也起到了作用。但我必须说,我想知道
替换
大括号中发生了什么。这种字符组合对我来说是新的。(我不是JS专业人士)