Heim Web-Frontend js-Tutorial So schreiben Sie die regulären Regeln zur Bestimmung des Formats von Personalausweis und Bankkartennummer

So schreiben Sie die regulären Regeln zur Bestimmung des Formats von Personalausweis und Bankkartennummer

Mar 30, 2018 pm 02:47 PM
格式 身份证

这次给大家带来判断身份证与银行卡号格式的正则怎么写,使用判断身份证与银行卡号格式正则的注意事项有哪些,下面就是实战案例,一起来看一下。

1.有时候我们会用到上传身份证号,或者银行卡号,这个时候就需要我们对身份证号以及银行卡号,进行基本的判断。

下面便是身份证号的判断返回YES是合法,反之不合法

#pragma mark 判断身份证号是否合法
- (BOOL)judgeIdentityStringValid:(NSString *)identityString {
  if (identityString.length != 18) return NO;
  // 正则表达式判断基本 身份证号是否满足格式
  NSString *regex2 = @"^(^[1-9]\\d{7}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])\\d{3}$)|(^[1-9]\\d{5}[1-9]\\d{3}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])((\\d{4})|\\d{3}[Xx])$)$";
  NSPredicate *identityStringPredicate = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",regex2];
  //如果通过该验证,说明身份证格式正确,但准确性还需计算
  if(![identityStringPredicate evaluateWithObject:identityString]) return NO;
  //** 开始进行校验 *//
  //将前17位加权因子保存在数组里
  NSArray *idCardWiArray = @[@"7", @"9", @"10", @"5", @"8", @"4", @"2", @"1", @"6", @"3", @"7", @"9", @"10", @"5", @"8", @"4", @"2"];
  //这是除以11后,可能产生的11位余数、验证码,也保存成数组
  NSArray *idCardYArray = @[@"1", @"0", @"10", @"9", @"8", @"7", @"6", @"5", @"4", @"3", @"2"];
  //用来保存前17位各自乖以加权因子后的总和
  NSInteger idCardWiSum = 0;
  for(int i = 0;i < 17;i++) {
    NSInteger subStrIndex  = [[identityString substringWithRange:NSMakeRange(i, 1)] integerValue];
    NSInteger idCardWiIndex = [[idCardWiArray objectAtIndex:i] integerValue];
    idCardWiSum      += subStrIndex * idCardWiIndex;
  }
  //计算出校验码所在数组的位置
  NSInteger idCardMod=idCardWiSum%11;
  //得到最后一位身份证号码
  NSString *idCardLast= [identityString substringWithRange:NSMakeRange(17, 1)];
  //如果等于2,则说明校验码是10,身份证号码最后一位应该是X
  if(idCardMod==2) {
    if(![idCardLast isEqualToString:@"X"]||[idCardLast isEqualToString:@"x"]) {
      return NO;
    }
  }else{
    //用计算出的验证码与最后一位身份证号码匹配,如果一致,说明通过,否则是无效的身份证号码
    if(![idCardLast isEqualToString: [idCardYArray objectAtIndex:idCardMod]]) {
      return NO;
    }
  }
  return YES;
}
Nach dem Login kopieren

在接下来便是银行卡号的的判断返回YES或者是真是合法,反之不合法

#pragma mark 判断银行卡号是否合法
-(BOOL)isBankCard:(NSString *)cardNumber{
  if(cardNumber.length==0){
    return NO;
  }
  NSString *digitsOnly = @"";
  char c;
  for (int i = 0; i < cardNumber.length; i++){
    c = [cardNumber characterAtIndex:i];
    if (isdigit(c)){
      digitsOnly =[digitsOnly stringByAppendingFormat:@"%c",c];
    }
  }
  int sum = 0;
  int digit = 0;
  int addend = 0;
  BOOL timesTwo = false;
  for (NSInteger i = digitsOnly.length - 1; i >= 0; i--){
    digit = [digitsOnly characterAtIndex:i] - '0';
    if (timesTwo){
      addend = digit * 2;
      if (addend > 9) {
        addend -= 9;
      }
    }
    else {
      addend = digit;
    }
    sum += addend;
    timesTwo = !timesTwo;
  }
  int modulus = sum % 10;
  return modulus == 0;
}
Nach dem Login kopieren

相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

推荐阅读:

正则的数字验证详解(附代码)

JS正则表达式验证数字的实战归纳

Das obige ist der detaillierte Inhalt vonSo schreiben Sie die regulären Regeln zur Bestimmung des Formats von Personalausweis und Bankkartennummer. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat -Befehle und wie man sie benutzt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie schreibe ich das QQ-Postfachformat? Was ist das QQ-Postfachformat? Wie schreibe ich das QQ-Postfachformat? Was ist das QQ-Postfachformat? Feb 22, 2024 pm 03:40 PM

QQ-E-Mail: QQ-Nummer@qq.com, Englisch QQ-E-Mail: Englisch oder Numbers@qq.com, Foxmail-E-Mail-Konto: Richten Sie Ihr eigenes Konto ein@foxmail.com, Mobiltelefon-E-Mail-Konto: Mobiltelefonnummer@qq.com. Tutorial Anwendbares Modell: iPhone13 System: IOS15.3 Version: QQ Mailbox 6.3.3 Analyse 1QQ Mailbox hat vier Formate, häufig verwendete QQ Mailbox: QQ Nummer@qq.com, Englisch QQ Mailbox: Englisch oder Numbers@qq.com, Foxmail E-Mail Konto: Richten Sie Ihr eigenes Konto@foxmail.com ein, E-Mail-Konto für Mobiltelefone: Mobiltelefonnummer@qq.com. Ergänzung: Was ist QQ-Postfach 1? Das früheste QQ-Postfach befand sich nur zwischen QQ-Benutzern

So verwenden Sie Anführungszeichen in Apple Notes So verwenden Sie Anführungszeichen in Apple Notes Oct 12, 2023 pm 11:49 PM

In iOS 17 und macOS Sonoma hat Apple neue Formatierungsoptionen für Apple Notes hinzugefügt, darunter Anführungszeichen und einen neuen Monostyle-Stil. Hier erfahren Sie, wie Sie sie verwenden. Mit zusätzlichen Formatierungsoptionen in Apple Notes können Sie Ihren Notizen jetzt Anführungszeichen hinzufügen. Das Format der Blockzitate erleichtert das visuelle Versetzen von Textabschnitten mithilfe der Anführungszeichenleiste links vom Text. Tippen/klicken Sie einfach auf die Formatschaltfläche „Aa“ und wählen Sie die Option „Blockzitat“ aus, bevor Sie etwas eingeben oder wenn Sie sich in der Zeile befinden, die Sie in ein Blockzitat umwandeln möchten. Diese Option gilt für alle Texttypen, Stiloptionen und Listen, einschließlich Checklisten. Im selben Menü „Format“ finden Sie die neue Option „Einzelstil“. Dies ist eine Überarbeitung der vorherigen „gleichbreiten“

Was ist das Dateiformat von Ink? Was ist das Dateiformat von Ink? Feb 03, 2023 pm 02:32 PM

ink ist das Dateiformat einer Verknüpfung; eine Verknüpfung ist ein Dateiobjekt, das in seiner Funktion einem symbolischen Link ähnelt, sich jedoch wesentlich von einem symbolischen Link unterscheidet; eine Verknüpfung ist eine gewöhnliche Datei, kein Symbol, und seine Erweiterung ist „ .lnk“, sodass die Verknüpfung kopiert, verschoben, geändert oder gelöscht werden kann; die Verknüpfung kann auf eine Datei, einen Ordner oder einen anderen zulässigen Speicherort im System verweisen.

Mit einem Ausweis können mehrere Taobao-Geschäfte eröffnet werden Mit einem Ausweis können mehrere Taobao-Geschäfte eröffnet werden Oct 10, 2023 pm 01:51 PM

Mit einem Ausweis kann nur ein Taobao-Geschäft eröffnet werden. Verkäufer sollten sich an die Vorschriften der Taobao-Plattform halten und nicht versuchen, die Ausweise anderer Personen für die Eröffnung mehrerer Geschäfte zu verwenden. Verkäufer können ihr Geschäft erweitern und den Umsatz steigern, indem sie Geschäfte zusammenlegen und Filialen eröffnen. Es ist jedoch zu beachten, dass jede Filiale einen eigenen Personalausweis zur Authentifizierung mit echtem Namen verwenden muss.

Was ist das Format von pptm? Was ist das Format von pptm? Jan 11, 2021 pm 02:46 PM

pptm ist ein Dateiformat von PowerPoint in der Office-Suite. Der vollständige Name lautet „Makro-fähige PowerPoint-Präsentation“. pptm-Dateien können nur mit Office-Software der Version 2007 und höher geöffnet werden. Beim Öffnen mit anderen Softwareversionen treten Probleme wie Unfähigkeit zum Bearbeiten und unvollständige Bilder auf.

Welches Format ist m3u8? Welches Format ist m3u8? Feb 20, 2023 pm 01:38 PM

m3u8 ist das UTF-8-Kodierungsformat. M3U8 bezieht sich auf die UTF-8-codierte M3U-Datei, und die M3U-Datei zeichnet eine Index-Klartextdatei auf. Wenn Sie sie öffnen, spielt die Wiedergabesoftware sie nicht ab, sondern ermittelt anhand ihrer Datei die Netzwerkadresse der entsprechenden Audio- und Videodatei Index für die Online-Verarbeitung. M3U8 ist ein gängiges Streaming-Medienformat, das hauptsächlich in Form einer Dateiliste vorliegt. Es unterstützt sowohl Live-Übertragung als auch On-Demand-Wiedergabe und wird besonders häufig auf Plattformen wie Android und iOS verwendet.

Welches Format hat die Datei cr3? Welches Format hat die Datei cr3? Jun 23, 2021 pm 03:22 PM

CR3-Dateien sind Original-Rohdateien, die von den neuen Kameras von Canon mit dem Digic8-Bildprozessor aufgezeichnet wurden. CR3-Dateien können mit Canon ddp geöffnet werden, einer Software zum Durchführen von Bildanpassungen wie „RAW-Entwicklung“ an RAW-Bildern.

Welches Format ist RTF? Welches Format ist RTF? Jan 30, 2023 pm 02:35 PM

Der vollständige Name von RTF ist „Rich Text Format“, was auf Chinesisch „Rich Text Format“ oder „Multiple Text Format“ bedeutet. Es handelt sich um ein von Microsoft entwickeltes plattformübergreifendes Dokumentformat Um mit anderen Textverarbeitungsprogrammen kompatibel zu sein, handelt es sich um eine Datei, die dem DOC-Format (Word-Dokument) ähnelt und eine gute Kompatibilität aufweist. Für normale Benutzer ist das RTF-Format ein gutes Tool zur Dateiformatkonvertierung zum Übertragen formatierter Textdokumente zwischen verschiedenen Anwendungen.

See all articles