私は選択した文字列を解析し、その文字列に数値とアルファベットの値があるかどうかを検証する必要があるプロジェクトで作業しています。あなたが何か考えているなら、私に解決策を教えてください。数値とアルファベットの文字を検証する文字列解析アルゴリズム
-1
A
答えて
0
これは、文字列$s
が数として使用することができ、正確true()
です:
number($s) = number($s)
これは$s
文字列のみラテン文字で構成され、正確にtrue()
です:
string-length(translate($s, $alpha, '')) = 0
ここで、$ alphaはすべて小文字と大文字を含む文字列です。
これは文字列$s
は、少なくとも1つの文字または数字含まれている場合に真である:$ alphaNumisすべて小文字と大文字、すべての数字を含む文字列
not(string-length(translate($s, $alphaNum, '')) = string-length($s))
を。
XPath 2.0(XSLT 2.0)では、正規表現と文字クラスを使用できます。
更新:彼が実際に文字列が文字または数字が含まれているかどうかをテストしたいとOPのコメントからと思われます。
第2の新しい要件は、それぞれの場合に文字列の一部を変数に格納することです。しかし、この要件は全く定義されておらず、OPのコメントに示されている2つの矛盾した例に過ぎない。
関連する問題
- 1. 解析文字列値URL
- 2. 解析文字列
- 3. 解析文字列
- 4. 解析文字列
- 5. 検証:文字、数字、 -
正規表現を使用できます。 – weston
明らかにロジックに問題があるので、小さなXML文書と変換の正確な結果を提供してください。文字列に英字*と*が含まれているかどうかをテストする必要があると言いますが、コメントでは、数字が ' 100-12 'の場合は 'true() 'と評価されます。手紙を含んでいません。 –