Hi I need to compare two strings regardless of the case of the letters (uppercase/lowercase).
<tr ng-repeat="x in vm.partners"> <td ng-if = "'vm.partner.name' === 'vm.partners.name'" colspan="2">{{ x.name }}</td> <td ng-if = "'vm.partner.name' === 'vm.partners.name'" colspan="2">{{ x.contact.city.name }}</td> </tr>I want to check(vm.partner.name) and (vm.partners.name) both two string are same in and pattern.
- I want to keep regex pattern, so please tell me how to do this.
Asked
Active
Viewed 3,455 times
-2
Rohit Gupta
- 23
- 1
- 2
-
1You could just toLowerCase() them – danielspaniol Nov 02 '17 at 05:18
-
No I need all combination like rOhit === Rohit. Its should be true. – Rohit Gupta Nov 02 '17 at 05:26
-
2'rOhit'.toLowerCase() === 'Rohit'.toLowerCase() – danielspaniol Nov 02 '17 at 05:28
-
so we need to use filter or just we can use 'vm.partner.name.toLowerCase() ' === 'vm.partners.name.toLowerCase() ' – Rohit Gupta Nov 02 '17 at 05:31
2 Answers
1
As mentioned in comments too , you can use toLowerCase to both the variables and check .No filters or anything needed.
<td ng-if = "vm.partner.name.toLowerCase()== vm.partners.name.toLowerCase()">
Note :do not take vm.partner.name as a string like you have taken in your code.
vertika
- 1,209
- 1
- 8
- 22
1
- Use
toLowerCase()like vertika suggested. - Make a function on the controller to keep the ng code cleaner in html.
- Show/Hide the whole row instead of showing/hiding each cell.
<table ng-app="myApp" ng-controller="HomeCtrl as vm">
<tr ng-repeat="partner in vm.partners" ng-show="vm.isPartner(partner.name)">
<td>{{partner.name}}</td>
<td>{{partner.city}}</td>
</tr>
</table>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<script>
angular.module('myApp', [])
.controller('HomeCtrl', function() {
let vm = this;
vm.partners = [
{
name: 'John',
city: 'Los Angeles',
},
{
name: 'Jim',
city: 'Las Vegas',
},
{
name: 'Joe',
city: 'Dallas',
},
];
vm.partner = {
name: 'jim',
};
vm.isPartner = function(name) {
return vm.partner.name.toLowerCase() === name.toLowerCase();
};
});
</script>
Kevin Aung
- 769
- 5
- 11