Julia 1.0

Unicode




julia

Unicode

Unicode.isassigned फ़ंक्शन

Unicode.isassigned(c) -> Bool

यदि दिए गए चार या पूर्णांक एक निर्दिष्ट यूनिकोड कोड बिंदु है, तो सही है।

उदाहरण

julia> Unicode.isassigned(101)
true

julia> Unicode.isassigned('\x01')
true
source

Unicode.normalize फंक्शन

Unicode.normalize(s::AbstractString, normalform::Symbol)

यूनिकोड मानक के चार "सामान्य रूपों" में से एक के अनुसार स्ट्रिंग s को सामान्य करें: normalform हो सकता है :NFC , :NFKC , या :NFKD । सामान्य रूप C (कैनोनिकल कंपोजिशन) और D (कैनोनिकल अपघटन) एक ही सार स्ट्रिंग के अलग-अलग समान रूप से समान अभ्यावेदन को एक एकल कैनोनिकल रूप में परिवर्तित करते हैं, जिसमें फॉर्म C अधिक कॉम्पैक्ट होता है। सामान्य रूप केसी और केडी अतिरिक्त रूप से "अनुकूलता समतुल्य" को कैनोनिकलाइज़ करते हैं: वे ऐसे वर्णों को परिवर्तित करते हैं जो समान रूप से समान होते हैं, लेकिन एक एकल विहित विकल्प में नेत्रहीन रूप से भिन्न होते हैं (उदाहरण के लिए वे व्यक्तिगत वर्णों में लिगचर का विस्तार करते हैं), फॉर्म केसी के कॉम्पैक्ट होने के साथ।

वैकल्पिक रूप से, महीन नियंत्रण और अतिरिक्त परिवर्तनों को Unicode.normalize(s; keywords...) कहकर प्राप्त किया जा सकता है, जहाँ निम्नलिखित बूलियन कीवर्ड विकल्पों में से कोई भी संख्या (जो Unicode.normalize(s; keywords...) को छोड़कर सभी डिफ़ॉल्ट रूप से false ) निर्दिष्ट हैं:

  • compose=false : विहित रचना नहीं करते हैं
  • decompose=true : विहित रचना के बजाय विहित विघटन करते हैं (यदि compose=true है तो वर्तमान की उपेक्षा की जाती है)
  • संगतता compat=true : संगतता समकक्षों को विहित किया जाता है
  • casefold=true : केस-असंवेदनशील स्ट्रिंग तुलना के लिए यूनिकोड केस फोल्डिंग, जैसे प्रदर्शन करते हैं
  • newline2lf=true , newline2ls=true , या newline2ps=true : विभिन्न न्यूलाइन अनुक्रमों (LF, CRLF, CR, NEL) को क्रमशः एक लाइनफीड (LF), लाइन-सेपरेशन (LS), या पैरा-सेपरेशन (PS) वर्ण में परिवर्तित करें।
  • stripmark=true : स्ट्रिप stripmark=true मार्क्स (जैसे उच्चारण)
  • stripignore=true : स्ट्रिप यूनिकोड के "डिफॉल्ट इग्नोर" अक्षर (जैसे सॉफ्ट हाइफ़न या लेफ्ट-टू-राइट मार्कर)
  • stripcc=true : स्ट्रिप कंट्रोल कैरेक्टर; क्षैतिज टैब और प्रपत्र फ़ीड रिक्त स्थान में कनवर्ट किए जाते हैं; newlines भी रिक्त स्थान में परिवर्तित हो जाते हैं जब तक कि एक नया-रूपांतरण ध्वज निर्दिष्ट नहीं किया गया था
  • rejectna=true : यदि बिना कोड कोड पाए जाते हैं तो एक त्रुटि फेंक दें
  • stable=true : यूनिकोड संस्करण स्थिरता को लागू करता है

उदाहरण के लिए, NFKC, कंपोजिट compose=true, compat=true, stable=true , कंपोजिट compose=true, compat=true, stable=true को कंपोज करता compose=true, compat=true, stable=true

उदाहरण

julia> "μ" == Unicode.normalize("µ", compat=true) #LHS: Unicode U+03bc, RHS: Unicode U+00b5
true

julia> Unicode.normalize("JuLiA", casefold=true)
"julia"

julia> Unicode.normalize("JúLiA", stripmark=true)
"JuLiA"
source

Unicode.graphemes फंक्शन

graphemes(s::AbstractString) -> GraphemeIterator

s सबस्ट्रिंग पर एक पुनरावृत्ति देता है जो स्ट्रिंग में विस्तारित अंगूर के अनुरूप होता है, जैसा कि यूनिकोड यूएएक्स 29 द्वारा परिभाषित किया गया है। (मोटे तौर पर, ये वही हैं जो उपयोगकर्ता एकल वर्णों के रूप में अनुभव करेंगे, भले ही उनमें एक से अधिक कोडपॉइंट हो सकते हैं; उदाहरण के लिए एक उच्चारण चिह्न के साथ संयुक्त एक पत्र एक एकल अंगूर है।)

source