සුදුසු ක්රමය භාවිතා කරන්න : String#split()
.
String string = "004-034556";
String[] parts = string.split("-");
String part1 = parts[0]; // 004
String part2 = parts[1]; // 034556
මෙය නිත්ය ප්රකාශනයක් අවශ්ය බව සලකන්න , එබැවින් අවශ්ය නම් විශේෂ අක්ෂර වලින් ගැලවීමට මතක තබා ගන්න .
එහි ඇති ඇල ඉර: විශේෂ අර්ථ සමග අක්ෂර 12 ක් \
, බැධී ^
ඩොලරය ලකුණක් $
, මෙම කාල හෝ තිතක් .
, සිරස් තීරුව හෝ නල සංකේතය |
, ප්රශ්නය ලකුණ ?
එම තරු ලකුණ හෝ තරු *
, ධන ලකුණ +
, විවෘත වරහන (
, භාරගන්නා අවසන් වරහන )
, සහ ආරම්භක හතරැස් වරහන [
, ආරම්භක වක්ර වරහන {
, මෙම විශේෂ අක්ෂර බොහෝ විට "මෙටාචරැක්ටර්ස්" ලෙස හැඳින්වේ.
ඒ නිසා, ඔබ උදා කාලය / තිතක් මත බෙදී කිරීමට අවශ්ය නම් .
"යන අරුත ඇති ' ඕනෑම චරිතයක් regex දී", භාවිත කිරීම හෝ පසු ඇල ඉර\
එසේ වැනි තනි විශේෂ චරිතයක් පැන split("\\.")
, හෝ භාවිතා චරිතය පන්ති[]
එසේ වගේ ප්රායෝගික චරිතය (ව) නියෝජනය කිරීමට split("[.]")
, හෝ භාවිතා Pattern#quote()
කිරීමට මුළු නූලෙන් එලෙසම පැන යන්න split(Pattern.quote("."))
.
String[] parts = string.split(Pattern.quote(".")); // Split on period.
නූලෙහි යම් අක්ෂර (ය) අඩංගු දැයි කල්තියා පරීක්ෂා කිරීම සඳහා භාවිතා කරන්න String#contains()
.
if (string.contains("-")) {
// Split it.
} else {
throw new IllegalArgumentException("String " + string + " does not contain -");
}
සටහන, මෙය සාමාන්ය ප්රකාශනයක් නොගනී. ඒ සඳහා භාවිතා String#matches()
කරන්න.
එහි ප්රති parts ලයක් වශයෙන් ඇති කොටස්වල බෙදීම් ස්වභාවය රඳවා ගැනීමට ඔබ කැමති නම්, ධනාත්මක පෙනුමක් භාවිතා කරන්න . ඔබට බෙදීම් චරිතය වම් අතෙහි කෙළවර වීමට අවශ්ය නම් ?<=
, රටාව මත කණ්ඩායම් උපසර්ගයක් මඟින් ධනාත්මක බැල්මක් භාවිතා කරන්න .
String string = "004-034556";
String[] parts = string.split("(?<=-)");
String part1 = parts[0]; // 004-
String part2 = parts[1]; // 034556
බෙදීම් චරිතය දකුණු පැත්තේ කෙළවර වීමට ඔබට අවශ්ය නම් ?=
, රටාව මත සමූහය උපසර්ග කිරීමෙන් ධනාත්මක පෙනුම භාවිතා කරන්න .
String string = "004-034556";
String[] parts = string.split("(?=-)");
String part1 = parts[0]; // 004
String part2 = parts[1]; // -034556
එහි ප්රති ing ලයක් ලෙස ලැබෙන කොටස් ගණන සීමා කිරීමට ඔබ කැමති නම්, ඔබට split()
ක්රමයේ 2 වන තර්කය ලෙස අපේක්ෂිත අංකය සැපයිය හැකිය .
String string = "004-034556-42";
String[] parts = string.split("-", 2);
String part1 = parts[0]; // 004
String part2 = parts[1]; // 034556-42