javascript - 如何知道一个字符串以javascript中的特定字符开始/结束?

标签 javascript string validation

<分区>

 var file = "{employee}";
 var imgFile = "cancel.json";

  if(file starts with '{' and file ends with '}' ){
     alert("invalid");
  }
  if(imgFile ends with '.json'){
    alert("invalid");
  }
  • 如何使用 javascript 验证字符串的开始和结束字符?
  • 在"file"中,字符串不应以“{”开头且不应以“}”结尾
  • 在“imgFile”中,字符串不应以“.json”结尾
  • match() 有效还是我应该使用 indexOf()

最佳答案

Does match() works or should i use indexOf()

都没有。两者都有效,但都搜索整个字符串。在相关位置提取子字符串并将其与您期望的子字符串进行比较效率更高:

if (file.charAt(0) == '{' && file.charAt(file.length-1) == '}') alert('invalid');
// or:                       file.slice(-1) == '}'
if (imgFile.slice(-5) == '.json') alert('invalid');

当然,你也可以使用正则表达式,使用智能正则表达式引擎应该也很高效(而且你的代码更简洁):

if (/^\{[\S\s]*}$/.test(file)) alert('invalid');
if (/\.json$/.test(imgFile)) alert('invalid');

关于javascript - 如何知道一个字符串以javascript中的特定字符开始/结束?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16709026/

相关文章:

python - 改变数据类时验证输入

javascript - Angular 4 中的多选拖放?

javascript - Firebase Firestore FCM 消息发送问题

string - 在 bash 中返回破折号之前的子字符串,后跟数字

string - 在 PowerBuilder 中使用两个值填充下拉列表框 (DDLB)

javascript - 使用具有多种变体的 JavaScript 验证表单

javascript - 将 JSON 数据项加载到 React Native 日历议程中

javascript - Action方法执行顺序

string - 多列上的 pandas 数据框 sort_values 并不总是有效

javascript - jQuery 验证插件提交有问题吗?