Index: components/autofill/core/browser/autofill_regex_constants.cc |
diff --git a/components/autofill/core/browser/autofill_regex_constants.cc b/components/autofill/core/browser/autofill_regex_constants.cc |
index 4aed1a53c579b8817bdca54a10f75b9a3053601d..78e3ff79fe392bc04f6ec889f8405701c5612d9e 100644 |
--- a/components/autofill/core/browser/autofill_regex_constants.cc |
+++ b/components/autofill/core/browser/autofill_regex_constants.cc |
@@ -8,6 +8,8 @@ |
#include "components/autofill/core/browser/autofill_regex_constants.h" |
+#define WORDBREAK "(\\A|\\z|\\PL)" |
Evan Stade
2015/12/07 23:56:10
could you add a comment explaining this is suppose
tfarina
2015/12/08 12:46:28
Done.
|
+ |
namespace autofill { |
///////////////////////////////////////////////////////////////////////////// |
@@ -84,11 +86,11 @@ const char kZipCodeRe[] = |
"zip|postal|post.*code|pcode" |
"|pin.?code" // en-IN |
"|postleitzahl" // de-DE |
- "|\\bcp\\b" // es |
- "|\\bcdp\\b" // fr-FR |
- "|\\bcap\\b" // it-IT |
+ "|" WORDBREAK "cp" WORDBREAK // es |
+ "|" WORDBREAK "cdp" WORDBREAK // fr-FR |
+ "|" WORDBREAK "cap" WORDBREAK // it-IT |
"|郵便番号" // ja-JP |
- "|codigo|codpos|\\bcep\\b" // pt-BR, pt-PT |
+ "|codigo|codpos|" WORDBREAK "cep" WORDBREAK // pt-BR, pt-PT |
"|Почтовый.?Индекс" // ru |
"|邮政编码|邮编" // zh-CN |
"|郵遞區號" // zh-TW |
@@ -98,7 +100,7 @@ const char kZip4Re[] = |
"|codpos2"; // pt-BR, pt-PT |
const char kCityRe[] = |
"city|town" |
- "|\\bort\\b|stadt" // de-DE |
+ "|" WORDBREAK "ort" WORDBREAK "|stadt" // de-DE |
"|suburb" // en-AU |
"|ciudad|provincia|localidad|poblacion" // es |
"|ville|commune" // fr-FR |
@@ -110,7 +112,7 @@ const char kCityRe[] = |
"|分區" // zh-TW |
"|^시[^도·・]|시[·・]?군[·・]?구"; // ko-KR |
const char kStateRe[] = |
- "(?<!united )state|county|region|province" |
+ "state|county|region|province" |
"|land" // de-DE |
"|county|principality" // en-UK |
"|都道府県" // ja-JP |
@@ -124,15 +126,16 @@ const char kStateRe[] = |
// credit_card_field.cc |
///////////////////////////////////////////////////////////////////////////// |
const char kNameOnCardRe[] = |
- "card.?(holder|owner)|name.*\\bon\\b.*card|(card|cc).?name|cc.?full.?name" |
- "|karteninhaber" // de-DE |
- "|nombre.*tarjeta" // es |
- "|nom.*carte" // fr-FR |
- "|nome.*cart" // it-IT |
- "|名前" // ja-JP |
- "|Имя.*карты" // ru |
+ "card.?(holder|owner)|name.*" WORDBREAK "on" WORDBREAK |
+ ".*card|(card|cc).?name|cc.?full.?name" |
Ilya Sherman
2015/12/07 23:49:25
nit: Please wrap this as
"card.?(holder|owner
tfarina
2015/12/08 12:46:28
Done.
|
+ "|karteninhaber" // de-DE |
+ "|nombre.*tarjeta" // es |
+ "|nom.*carte" // fr-FR |
+ "|nome.*cart" // it-IT |
+ "|名前" // ja-JP |
+ "|Имя.*карты" // ru |
"|信用卡开户名|开户名|持卡人姓名" // zh-CN |
- "|持卡人姓名"; // zh-TW |
+ "|持卡人姓名"; // zh-TW |
Ilya Sherman
2015/12/07 23:49:25
nit: Please revert these alignment changes.
tfarina
2015/12/08 12:46:28
Sorry, that was clang format. Reverted.
|
const char kNameOnCardContextualRe[] = |
"name"; |
const char kCardNumberRe[] = |
@@ -148,7 +151,7 @@ const char kCardNumberRe[] = |
const char kCardCvcRe[] = |
"verification|card identification|security code|card code" |
"|cvn|cvv|cvc|csc|cvd|cid|ccv" |
- "|\\bcid\\b"; |
+ "|" WORDBREAK "cid" WORDBREAK; |
// "Expiration date" is the most common label here, but some pages have |
// "Expires", "exp. date" or "exp. month" and "exp. year". We also look |
@@ -247,7 +250,8 @@ const char kFirstNameRe[] = |
"|nome" // pt-BR, pt-PT |
"|Имя" // ru |
"|이름"; // ko-KR |
-const char kMiddleInitialRe[] = "middle.*initial|m\\.i\\.|mi$|\\bmi\\b"; |
+const char kMiddleInitialRe[] = |
+ "middle.*initial|m\\.i\\.|mi$|" WORDBREAK "mi" WORDBREAK; |
const char kMiddleNameRe[] = |
"middle.*name|mname|middle$" |
"|apellido.?materno|lastlastname"; // es |
@@ -293,7 +297,7 @@ const char kPhonePrefixRe[] = |
const char kPhoneSuffixRe[] = |
"suffix"; |
const char kPhoneExtensionRe[] = |
- "\\bext|ext\\b|extension" |
+ WORDBREAK "ext|ext" WORDBREAK "|extension" |
"|ramal"; // pt-BR, pt-PT |
} // namespace autofill |