2017-03-06 113 views
0

我已經被日本人要求更改表單的字符串長度驗證。基於字節而非長度的字符串長度驗證

目前,沒有正常的字符串長度驗證(什麼計數是字符的數量,無論這些字符是什麼)。

我一直要求做的是基於字節來驗證字符串長度 - 換句話說,four 1-byte characters和一個2-byte characters將佔6-byte總長度的長度,即使有5字符。

什麼我需要知道的是:

1)是否有1只和2字節字符? (This question talks about 3 and 4 byte characters)

2)我應該算作1字節還是2字節的所有字符的範圍是多少? 我相信問我這個人可以舉幾個例子,但我真的必須涵蓋所有案例。

回答

2

如果是基於UTF-8編碼的基於網絡的輸入表單,您應該能夠根據其第一字節值範圍區分ASCII和其他語言。請參閱StackOverflowWikipedia's explanation中的示例Javascript代碼。其他Unicode編碼有類似的規則,但你必須詳細看看