【问题标题】:How to match uppercase and lower case letter in angularjs?如何匹配angularjs中的大写和小写字母?
【发布时间】:2017-12-28 04:08:50
【问题描述】:

我想使用正则表达式匹配所有大写字母和小写字母,在我的代码中我只匹配特定字符,但我想匹配所有字符,无论大小写。这是我的代码

$scope.set_color = function(row) {
    var inputString = row.Subject;
    for (i = 0; i < inputString.length; i++) {
        //var findme = "HOT RUSH";
        //var str = findme.match(/\b([a-z][A-Z])\b/);
        var findmeCap = "HOT RUSH";
        var findmeSmall = "hot rush";
        if (inputString.indexOf(findmeCap) > -1 || inputString.indexOf(findmeSmall) > -1) {
            return {
                'background-color': '#FFCCCB'
            }
        }
    }
}

我该怎么做?

【问题讨论】:

  • 你能分享一个样本inputString
  • 你不需要有大小写比较字符串和做多重比较。将您的 inputString 转换为小写并进行比较。
  • 所以查找正则表达式并学习如何忽略大小写。但是您的 reg exp 已被注释掉,并且您正在搜索一个字符串,而不是 reg exp。
  • 没有基于列值的即时着色表行。所以我需要匹配字符。如果它是大写或小写。该行应该着色

标签: javascript


【解决方案1】:

可以做string.toUpperCase和string.toLowerCase,然后比较结果。并相应地改变颜色结果。

var a = "hello";
var b = "HELLO";  
if (a.toUpperCase() === b.toUpperCase()) {
   alert("string is equal");
   //change color 
}

另一种解决方案是https://github.com/nickuraltsev/ignore-case

只有这样你才能使用其中任何一个。

【讨论】:

    【解决方案2】:
    var inputString = row.Subject;
    var findMe = "hot rush";
    if(inputString.toLowerCase().indexOf(findMe) !== -1) {
      return {'background-color': '#FFCCCB'};
    }
    

    这就是我处理问题的方式。Regex 不是你需要的。并摆脱 for 循环。

    【讨论】:

    • 谢谢您的回答,您的代码是正确的,但我正在循环遍历表中的每一行并在主题列中搜索“热潮”,如果发现热潮,那么该特定行应该是变成红色,但问题是有些行有大写的“HOT RUSH”,有些行有小的“hot rush”,或者有些行有“Hot rush”或“hot Rush”,我需要匹配所有这些。
    【解决方案3】:

    在我的情况下,以下代码有效。

    $scope.set_color = function (row) {
                           var inputString = row.Subject;
                           for (i = 0; i < inputString.length; i++) {
                               var findMe = "hot rush";
                               if (inputString.toLowerCase().indexOf(findMe) > -1) {
                                   return { 'background-color': '#FFCCCB' }
                               }
                           }
                       }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-02-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多