精準準確的統一社會信用代碼正則(js)

參照標準:數組

《GB_32100-2015_法人和其餘組織統一社會信用代碼編碼規則.》
按照編碼規則:
統一代碼爲18位,統一代碼由十八位的數字或大寫英文字母(不適用I、O、Z、S、V)組成,由五個部分組成:
第一部分(第1位)爲登記管理部門代碼,9表示工商部門;(數字或大寫英文字母)
第二部分(第2位)爲機構類別代碼;(數字或大寫英文字母)
第三部分(第3-8位)爲登記管理機關行政區劃碼;(數字)
第四部分(第9-17位)爲全國組織機構代碼;(數字或大寫英文字母)
第五部分(第18位)爲校驗碼(數字或大寫英文字母)測試

 

正則編寫:編碼

統一社會信用代碼:/^[^_IOZSVa-z\W]{2}\d{6}[^_IOZSVa-z\W]{10}$/gcode

     開始寫的沒有寫好開始結束,...^開始,$結束要補上test

單個校驗時可以使用:test方法;數組時使用match方法.方法

 

另外還有一個企業註冊號的正則,它的規則是15位數字字母組成:/^[A-Za-z0-9]\w{14}$/g英文

 

 

統一代碼爲18位,統一代碼由十八位的數字或大寫英文字母(不適用I、O、Z、S、V)組成,由五個部分組成:

第一部分(第1位)爲登記管理部門代碼,9表示工商部門;(數字或大寫英文字母)

第二部分(第2位)爲機構類別代碼;(數字或大寫英文字母)

第三部分(第3-8位)爲登記管理機關行政區劃碼;(數字)

第四部分(第9-17位)爲全國組織機構代碼;(數字或大寫英文字母)

第五部分(第18位)爲校驗碼(數字或大寫英文字母)co

正則編寫:字符

統一社會信用代碼:/[^_IOZSVa-z\W]{2}\d{6}[^_IOZSVa-z\W]{10}$/g數字

網上有的沒有那個$號,我測試出來是先校驗一個正確的以後,再加寫東西會繼續返回true,,及91420000737944946L爲真,以後91420000737944946Ltest也仍是真...沒有對長度收尾

單個校驗時可以使用:test方法;數組時使用match方法.

另外還有一個企業註冊號的正則,它的規則是15位數字字母組成:/^[A-Za-z0-9]\w{14}$/g

附統一社會信用代碼的構成:

統一代碼的構成

1 結構

統一代碼由十八位的阿拉伯數字或大寫英文字母(不使用I、O、Z、S、V)組成。

第1位:登記管理部門代碼(共一位字符)

第2位:機構類別代碼(共一位字符)

第3位~第8位:登記管理機關行政區劃碼(共六位阿拉伯數字)

第9位~第17位:主體標識碼(組織機構代碼)(共九位字符)

第18位:校驗碼​(共一位字符)

2 代碼及說明​​

登記管理部門代碼:使用阿拉伯數字或大寫英文字母表示。​

機構編制:1​

民政:5​

工商:9​

其餘:Y

機構類別代碼:使用阿拉伯數字或大寫英文字母表示。​

機構編制機關:11打頭​​

機構編制事業單位:12打頭​

機構編制中央編辦直接管理機構編制的羣衆團體:13打頭​​

機構編制其餘:19打頭​



民政社會團體:51打頭​

民政民辦非企業單位:52打頭​

民政基金會:53打頭​

民政其餘:59打頭​



工商企業:91打頭​

工商個體工商戶:92打頭​

工商農民專業合做社:93打頭​



其餘:Y1打頭​

登記管理機關行政區劃碼:只能使用阿拉伯數字表示。按照GB/T
2260編碼。​

例如:四川省成都市本級就是510100;四川省自貢市自流井區就是510302。​

主體標識碼(組織機構代碼):使用阿拉伯數字或英文大寫字母表示。按照GB
11714編碼。

在實行統一社會信用代碼以前,之前的組織機構代碼證上的組織機構代碼由九位字符組成。格式爲XXXXXXXX-Y。前面八位被稱爲「本體代碼」;最後一位被稱爲「校驗碼」。校驗碼和本體代碼由一個連字號(-)鏈接起來。以便讓人很容易的看出校驗碼。可是三證合一後,組織機構的九位字符所有被歸入統一社會信用代碼的第9位至第17位,其原有組織機構代碼上的連字號不帶入統一社會信用代碼。

原有組織機構代碼上的「校驗碼」的計算規則是:​

例如:某公司的組織機構代碼是:59467239-9。那其最後一位的組織機構代碼校驗碼9是如何計算出來的呢?

第一步:取組織機構代碼的前八位本體代碼爲基數。5 9 4 6 7 2 3 9

提示:若是本體代碼中含有英文大寫字母。則A的基數是10,B的基數是11,C的基數是12,依此類推,直到Z的基數是35。

第二步:​​取加權因子數值。由於組織機構代碼的本體代碼一共是八位字符。則這八位的加權因子數值從左到右分別是:三、七、九、十、五、八、四、2。​

第三步:本體代碼基數與對應位數的因子數值相乘。​

5×3=15,9×7=63,4×9=36,6×10=60,

7×5=35,2×8=16,3×4=12,9×2=18​​

第四步:將乘積求和相加。​

15+63+36+60+35+16+12+18=255

第五步:​將和數除以11,求餘數。​​

255÷11=33,餘數是2。​​

第六步:用阿拉伯數字11減去餘數,得求校驗碼的數值。當校驗碼的數值爲10時,校驗碼用英文大寫字母X來表示;當校驗碼的數值爲11時,校驗碼用0來表示;其他求出的校驗碼數值就用其自己的阿拉伯數字來表示。​

11-2=9,所以此公司完整的組織機構代碼爲
59467239-9。​​

校驗碼:使用阿拉伯數字或大寫英文字母來表示。校驗碼的計算方法參照 GB/T
17710。

例如:某公司的統一社會信用代碼爲91512081MA62K0260E,那其最後一位的校驗碼E是如何計算出來的呢?

第一步:取統一社會信用代碼的前十七位爲基數。9 1 5 1 2 0 8 1 21 10 6 2 19 0 2 6
0提示:若是前十七位統一社會信用代碼含有英文大寫字母(不使用I、O、Z、S、V這五個英文字母)。則英文字母對應的基數分別爲:A=十、B=十一、C=十二、D=1三、E=1四、F=1五、G=1六、H=1七、J=1八、K=1九、L=20、M=2一、N=2二、P=2三、Q=2四、R=2五、T=2六、U=2七、W=2八、X=2九、Y=30​

第二步:​​取加權因子數值。由於統一社會信用代碼前面前面有十七位字符。則這十七位的加權因子數值從左到右分別是:一、三、九、2七、1九、2六、1六、1七、20、2九、2五、1三、八、2四、十、30、2​8

第三步:基數與對應位數的因子數值相乘。​

9×1=9,1×3=3,5×9=45,1×27=27,2×19=38,0×26=0,8×16=128​

1×17=17,21×20=420,10×29=290,6×25=150,2×13=26,19×8=152​

0×23=0,2×10=20,6×30=180,0×28=0

第四步:將乘積求和相加。​9+3+45+27+38+0+128+17+420+290+150+26+152+0+20+180+0=1495

第五步:​將和數除以31,求餘數。​​

1495÷31=48,餘數是17。​​

第六步:用阿拉伯數字31減去餘數,得求校驗碼的數值。當校驗碼的數值爲0~9時,就直接用該校驗碼的數值做爲最終的統一社會信用代碼的校驗碼;若是校驗碼的數值是10~30,則校驗碼轉換爲對應的大寫英文字母。對應關係爲:A=十、B=十一、C=十二、D=1三、E=1四、F=1五、G=1六、H=1七、J=1八、K=1九、L=20、M=2一、N=2二、P=2三、Q=2四、R=2五、T=2六、U=2七、W=2八、X=2九、Y=30

由於,31-17=14,因此該公司完整的統一社會信用代碼爲
91512081MA62K0260E。​​

————————————————

統一社會信用代碼與原來營業執照註冊號、稅務登記號、組織機構代碼的轉換關係​

因爲18位統一社會信用代碼從2015年10月1日才正式實行。當前還有不少系統並無徹底轉換到統一社會信用代碼上。當您遇到須要讓您填寫組織機構代碼或者稅務登記號的時候,您應該如何從統一社會信用代碼獲取信息呢?​

實質上:​

統一社會信用代碼的第九位到第十七位就是原來的組織機構代碼。​

統一社會信用代碼的第三位到第十七位絕大多數的狀況都是原來的稅務登記證號。(不過因爲少數發證機構對地方行政區劃代碼作了規範。因此,有少部分企業的新的統一社會信用代碼並不必定的第3位到第8位的阿拉伯數字並必定能徹底對應之前的稅務登記證號的前六位。)​​

統一社會信用代碼沒法對應原來營業執照的註冊號。當遇到非要您填寫營業執照的註冊號,又暫時沒法識別統一社會信用代碼的場合。你則只有拿出之前舊的營業執照查看上面的註冊號。

例如:91370200163562681G這個統一社會信用代碼。​

其組織機構代碼是:16356268-1​其稅務登記號是:370200163562681若是與以前的稅務登記號稍微有所出入,則通常是370200不一致。尤爲是00這兩位

相關文章
相關標籤/搜索