在Java中拉丁字母的正则表达式(Latin letter regular expression i

2019-10-21 12:41发布

我需要在Java中匹配拉丁字母和一些特殊字符的正则表达式。

我不希望列出的字符。

例子:

应符合下列大写和小写: äöü ç łąćżźńóę

如果不匹配: £

我试了好几种图案和团体,但小时后,我的想法

任何帮助将不胜感激。

Answer 1:

\p{IsLatin}字符类会做到这一点。

即, System.out.println(someString.matches("\\p{IsLatin}+"));

这是在一个名为Pattern类的文档 。

遍历所有可能的字符有快速循环显示字符的全套它匹配的是:

ABCDEFGHIJKLMNOPQRSTU VWXYZ ABCDEFGHIJKLMNOPQRSTU VWXYZªºA A A A A A自动ÇE E E E I I I I dÑ○○○○○○U U U U意大利ÞSS A A A A A AæçE E E E I I I I dñ○○○○○○U U U U评论þY A A A A A A I C I C I C I C₫₫E E E E E E E E E E E E G G G G G G G G H H H H I I I I I I I I I IijijĴķĸL L L L L L L L L L N N N N N NʼnN 2 O○○○○○ œœR R R R R R S S S S S S S S S S S S T T [T T [T T [U U U U U U U U U U U U W W Y Y Y Z Zž小号ɃƁƂƂ ƄƄɔƇƇƉƊƌƌƍƎəɛƒƒƓɣƕƖƗƙƙƚƛƜƝƞƟ○○ƢƣƥƥƦƧƨΣƪƫƬƬƮ的UuƱƲƴƴž žʒƹƹƺƻƽƽƾƿ|!ǁǂdždždžLJLjljnjnjnjǎǎǐǐǒǒǔǔǖǖǗǘǚǚǜǜǝǟǟǠǡǢǣǥǥǧǧ改签改签ǫǫǭǭǯǯǰdzdzdzǵǵǶǷǹǹǺ ǺǼǽǾǾȀȁȂȃȄȅȆȇȈȉȊȋȌȍȎȏȐȑȒȓȔȕȖȗS S S T T [ȜȝȞȟƞȡȢȣȤȥ埃埃ȨȩȪȫȬ ȭȯȯȱȱȳȳȴȵȶȷȸȹȺȼȼȽȾȿɀɂɂɃɄʌɇɇɉɉɋɋɍɍɏɏɐɑɒɓɔɕɖɗɘəɚɛɜɝɞ ɟɠɡɢɣɤɥɦɧɨɩɪɫɬɭɮɯɰɱɲɳɴɵɶɷɸɹɺɻɼɽɾɿʀʁʂʃʄʅʆʇʈʉʊʋʌʍʎʏʐ ʑʒʓʔʕʖʗʘʙʚʛʜʝʞʟʠʡʢʣʤʥʦʧʨʩʪʫʬʭʮʯʰʱʲʳʴʵʶʷʸˠˡˢˣˤᴀᴁᴂᴃᴄ ᴅᴆᴇᴈᴉᴊᴋᴌᴍᴎᴏᴐᴑᴒᴓᴔᴕᴖᴗᴘᴙᴚᴛᴜᴝᴞᴟᴠᴡᴢᴣᴤᴥᴬᴭᴮᴯᴰᴱᴲᴳᴴᴵᴶᴷᴸᴹᴺᴻᴼ ᴽᴾᴿᵀᵁᵂᵃᵄᵅᵆᵇᵈᵉᵊᵋᵌᵍᵎᵏᵐᵑᵒᵓᵔᵕᵖᵗᵘᵙᵚᵛᵜᵢᵣᵤᵥᵫᵬᵭᵮᵯᵰᵱᵲᵳᵴᵵᵶ ᵹᵺᵻᵼᵽᵾᵿᶀᶁᶂᶃᶄᶅᶆᶇᶈᶉᶊᶋᶌᶍᶎᶏᶐᶑᶒᶓᶔᶕᶖᶗᶘᶙᶚᶛᶜᶝᶞᶟᶠᶡᶢᶣᶤᶥᶦᶧᶨᶩᶪ ᶫᶬᶭᶮᶯᶰᶱᶲᶳᶴᶵᶶᶷᶸᶹᶺᶻᶼᶽᶾA A b b b b b b I C₫₫₫₫₫₫₫₫₫₫E E E E E E E E Eè F F G G H H H H H H H H I I I I KķL个K L L L LḺL L L M M M M M M N N N N N N N N○○○○ ○○○○p p R R R R R R R的R F S S S S S S S S S S S S S T T [T T [T T [T T [ÛU U U U U U U U U,V,o的钒O w制备瓦特W W W W W W W W X XXX Y Y Z ZžħY A五六ẜẝẞẟA A A A A A A A A A A A A A A A A A A A A A A E E E E E E E E E E E E E E E E I I I I○○○○○○○○○○○○○○○○○○○○○○○○Û U U U U U U U U U U U U Y Y Y Y Y Y Y YỻỻỼỽỿỿⁱⁿₐₑₒₓₔₕₖₗₘₙₚₛₜK Aⅎⅎⅰⅱⅲⅳⅴ ⅵⅶⅷⅸⅹⅺⅻⅼⅽⅾⅿⅰⅱⅲⅳⅴⅵⅶⅷⅸⅹⅺⅻⅼⅽⅾⅿↀↁↂↄↄↅↆↇↈⱡⱡⱢⱣɽⱥⱦⱨⱨⱪⱪⱬⱬɑ ⱮⱯⱰⱱⱳⱳⱴⱶⱶⱷⱸⱹⱺⱻⱼⱽⱾⱿꜣꜣꜤꜥꜧꜧꜩꜩꜫꜫꜭꜭꜯꜯꜰꜱꜳꜳꜵꜵꜷꜷꜸꜹꜺꜻꜽꜽꜿꜿꝁꝁ ꝃꝃꝅꝅꝇꝇꝉꝉꝋꝋꝍꝍꝏꝏꝑꝑꝒꝓꝕꝕꝗꝗꝙꝙꝛꝛꝝꝝꝟꝟꝡꝡꝣꝣꝤꝥꝧꝧꝩꝩꝫꝫꝭꝭꝮꝯꝰꝱꝲ ꝴꝵꝶꝷꝸꝹꝺꝻꝼꝽꝾꝿꞀꞁꞂꞃꞄꞅꞆꞇꞋꞌꞍꞎꞐꞑꞒꞓꞠꞡꞢꞣꞤꞥꞦꞧꞨꞩꞪꟸꟹꟺꟻꟼꟽꟾꟿFF音响FL FFI FFL英尺ST A b C d E F G H I J K L M N 2 O p qř式T U V W X Y Z上b C d E F G H I J K L M N 2 O p q - [R式T U v W X Y Z ^

如果这是太多了,你可以用一些相交它命名的Unicode块 。

例如,该字符类:

[\p{IsLatin}&&[\p{InBasic_Latin}\p{InLatin_1_Supplement}\p{InLatin_Extended_A}\p{InLatin_Extended_B}]]

将匹配:

ABCDEFGHIJKLMNOPQRSTU VWXYZ ABCDEFGHIJKLMNOPQRSTU VWXYZªºA A A A A A自动ÇE E E E I I I I dÑ○○○○○○U U U U意大利ÞSS A A A A A AæçE E E E I I I I dñ○○○○○○U U U U评论þY A A A A A A I C I C I C I C₫₫E E E E E E E E E E E E G G G G G G G G H H H H I I I I I I I I I IijijĴķĸL L L L L L L L L L N N N N N NʼnN 2 O○○○○○ œœR R R R R R S S S S S S S S S S S S T T [T T [T T [U U U U U U U U U U U U W W Y Y Y Z Zž小号ɃƁƂƂ ƄƄɔƇƇƉƊƌƌƍƎəɛƒƒƓɣƕƖƗƙƙƚƛƜƝƞƟ○○ƢƣƥƥƦƧƨΣƪƫƬƬƮ的UuƱƲƴƴž žʒƹƹƺƻƽƽƾƿ|!ǁǂdždždžLJLjljnjnjnjǎǎǐǐǒǒǔǔǖǖǗǘǚǚǜǜǝǟǟǠǡǢǣǥǥǧǧ改签改签ǫǫǭǭǯǯǰdzdzdzǵǵǶǷǹǹǺ ǺǼǽǾǾȀȁȂȃȄȅȆȇȈȉȊȋȌȍȎȏȐȑȒȓȔȕȖȗS S S T T [ȜȝȞȟƞȡȢȣȤȥ埃埃ȨȩȪȫȬ ȱȳȯȭȯȱȳȴȵȶȷȸȹȺȼȼȽȾȿɀɂɂɃɄʌɇɇɉɉɋɋɌɍɏɏ



Answer 2:

使用下面模式( \p{L}匹配任何Unicode字符):

[\p{L}]+


文章来源: Latin letter regular expression in Java