如果找到部分字符串,则返回完整字符串Javascript/Jquery
如果部分匹配,则无法检索完整字符串 例如: src='当TAtrimg001a.svg为\neq 0$时,表达式$a{\color{blue}{x}}^2+b{\color{blue}{x}}}+c$称为二次型' 搜索“svg”>应返回TAtrimg001a.svg 我试图搜索并找到字符串“svg”。如果“svg”存在,则它应返回TAtrimg001a.svg,不仅返回其位置或单词svg本身,还应返回完整的svg文件名 作为对评论的答复 我尝试用以下不同的方法找到匹配项,但它们确实符合我的要求,例如:如果找到部分字符串,则返回完整字符串Javascript/Jquery,javascript,jquery,Javascript,Jquery,如果部分匹配,则无法检索完整字符串 例如: src='当TAtrimg001a.svg为\neq 0$时,表达式$a{\color{blue}{x}}^2+b{\color{blue}{x}}}+c$称为二次型' 搜索“svg”>应返回TAtrimg001a.svg 我试图搜索并找到字符串“svg”。如果“svg”存在,则它应返回TAtrimg001a.svg,不仅返回其位置或单词svg本身,还应返回完整的svg文件名 作为对评论的答复 我尝试用以下不同的方法找到匹配项,但它们确实符合我的要求,
var res = str.match(/svg/ig);
var res = str.search("svg");
var res = str.indexOf( "svg" )
使用正则表达式很简单。string
.match
方法接受一个正则表达式并返回:
如果不匹配null
- 数组,其中第一个元素是整个匹配字符串,其余元素是各自的捕获组(如果有)
.svg
结尾的任何非空白字符字符串。您可能想要扩大或收紧它以满足您的确切用例
src='当TAtrimg001a.svg为\neq 0$时,表达式$a{\color{blue}{x}}^2+b{\color{blue}{x}}}+c$称为二次型'
函数findFileName(str,ext){
const match=str.match(新的RegExp(`\\w+\\.${ext}`));
返回匹配项和匹配项[0]
}
log(findFileName(src,“svg”))
与regex一起使用非常简单。string.match
方法接受一个正则表达式并返回:
如果不匹配null
- 数组,其中第一个元素是整个匹配字符串,其余元素是各自的捕获组(如果有)
.svg
结尾的任何非空白字符字符串。您可能想要扩大或收紧它以满足您的确切用例
src='当TAtrimg001a.svg为\neq 0$时,表达式$a{\color{blue}{x}}^2+b{\color{blue}{x}}}+c$称为二次型'
函数findFileName(str,ext){
const match=str.match(新的RegExp(`\\w+\\.${ext}`));
返回匹配项和匹配项[0]
}
log(findFileName(src,“svg”)
在ES6中,您可以执行类似于const result=str.endsWith(“.svg”)?str:null
,它将存储在结果
变量的完整文件名中(如果它以“.svg”部分结尾,换句话说,它具有svg
格式),或者null
(如果它没有):
函数checkIsFileOfType(str,fileType){
返回str.endsWith(“.”+文件类型)?str:null;
}
log(checkIsFileOfType(“TAtrimg001a.svD”、“svg”);
log(checkIsFileOfType(“TAtrimg001a.svg”、“svg”)代码>在ES6中,您可以执行类似于const result=str.endsWith(“.svg”)?str:null
,它将存储在结果
变量的完整文件名中(如果它以“.svg”部分结尾,换句话说,它具有svg
格式),或者null
(如果它没有):
函数checkIsFileOfType(str,fileType){
返回str.endsWith(“.”+文件类型)?str:null;
}
log(checkIsFileOfType(“TAtrimg001a.svD”、“svg”);
log(checkIsFileOfType(“TAtrimg001a.svg”、“svg”)代码>您需要向我们展示您是如何匹配的。请提供明确要求的代码。例如,文件名是否可以包含空格。我尝试用不同的方法找到它,比如var res=str.match(/svg/ig);var res=str.search(“svg”);var res=str.indexOf(“svg”)虽然这条评论很晚,但这里有一个解决方案(示例/应用程序),与公认答案中提供的解决方案没有什么不同:您需要向我们展示您是如何匹配的。请提供明确要求的代码。例如,文件名是否可以包含空格。我尝试用不同的方法找到它,比如var res=str.match(/svg/ig);var res=str.search(“svg”);var res=str.indexOf(“svg”)虽然此评论很晚才发表,但这里有一个解决方案(示例/应用程序),与公认答案中提供的解决方案没有什么不同: