मैं एक तरीका है जिसके पता लगाता है कि क्या एक स्ट्रिंग एक नंबर है:Regex चीनी संख्या
public static boolean isNumber(String num)
{
return num.matches("(\\p{N})+");
}
उपरोक्त विधि सफलतापूर्वक अंग्रेजी, हिंदी, अरबी संख्या मिलान लेकिन चीनी नम्बर मिलान करने में विफल रहता है :
三 十萬 零 二百 五十 आदि
यह एक regex जो किसी भी (या प्रमुख भाषाओं) भाषा से एक संख्या से मेल कर सकते हैं बनाने के लिए संभव है?
संपादित करें: संख्या दशमलव नहीं होगी, इसका उपयोग फ़ोन नंबर को सत्यापित करने के लिए किया जाएगा।
ये दिखने '\ p {Lo}' श्रेणी से संबंधित हैं। –
@stribizhev यह काम कर रहा है, लेकिन http://www.regular-expressions.info/unicode.html से \ p {Lo} की परिभाषा यह कह रही है कि यह संख्याओं के अलावा अन्य वर्णों से मेल खा सकता है? –
क्या यह वर्ण कहने के लिए कोई वर्ण (आसानी से automatable) तरीका है कि क्या यह वर्ण अंक के रूप में उपयोग किए जाते हैं? क्या उन्हें शब्दों/पाठ के गैर-संख्यात्मक भाग के रूप में उपयोग किया जा सकता है? – doublep