Question 5: "How to split a string in Java"

Java - Top 10 Most Viewed Questions on Stack Overflow Question 5: "How to split a string in Java"
9 minutes
Share the link to this page
Copied
  Completed
You need to have access to the item to view this lesson.
One-time Fee
$69.99
List Price:  $99.99
You save:  $30
€65.14
List Price:  €93.07
You save:  €27.92
£55.73
List Price:  £79.62
You save:  £23.88
CA$95.61
List Price:  CA$136.60
You save:  CA$40.98
A$106.30
List Price:  A$151.87
You save:  A$45.56
S$94.64
List Price:  S$135.20
You save:  S$40.56
HK$546.91
List Price:  HK$781.33
You save:  HK$234.42
CHF 63.50
List Price:  CHF 90.72
You save:  CHF 27.21
NOK kr764.69
List Price:  NOK kr1,092.46
You save:  NOK kr327.77
DKK kr485.92
List Price:  DKK kr694.20
You save:  DKK kr208.28
NZ$117
List Price:  NZ$167.15
You save:  NZ$50.15
د.إ257.06
List Price:  د.إ367.25
You save:  د.إ110.18
৳7,661.98
List Price:  ৳10,946.16
You save:  ৳3,284.17
₹5,839.65
List Price:  ₹8,342.71
You save:  ₹2,503.06
RM331.75
List Price:  RM473.95
You save:  RM142.20
₦86,437.65
List Price:  ₦123,487.65
You save:  ₦37,050
₨19,492.21
List Price:  ₨27,847.21
You save:  ₨8,355
฿2,575.56
List Price:  ฿3,679.53
You save:  ฿1,103.97
₺2,262.43
List Price:  ₺3,232.18
You save:  ₺969.75
B$357.76
List Price:  B$511.10
You save:  B$153.34
R1,296.01
List Price:  R1,851.52
You save:  R555.51
Лв127.38
List Price:  Лв181.98
You save:  Лв54.60
₩95,113.23
List Price:  ₩135,881.87
You save:  ₩40,768.63
₪260.11
List Price:  ₪371.60
You save:  ₪111.49
₱3,999.61
List Price:  ₱5,713.97
You save:  ₱1,714.36
¥10,715.43
List Price:  ¥15,308.41
You save:  ¥4,592.98
MX$1,185.45
List Price:  MX$1,693.57
You save:  MX$508.12
QR254.79
List Price:  QR364.01
You save:  QR109.21
P955.69
List Price:  P1,365.33
You save:  P409.64
KSh9,427.65
List Price:  KSh13,468.65
You save:  KSh4,041
E£3,355.67
List Price:  E£4,794.02
You save:  E£1,438.35
ብር3,989.43
List Price:  ብር5,699.43
You save:  ብር1,710
Kz58,616.62
List Price:  Kz83,741.62
You save:  Kz25,125
CLP$66,326.02
List Price:  CLP$94,755.52
You save:  CLP$28,429.50
CN¥506.51
List Price:  CN¥723.62
You save:  CN¥217.11
RD$4,049.59
List Price:  RD$5,785.38
You save:  RD$1,735.78
DA9,420.19
List Price:  DA13,457.99
You save:  DA4,037.80
FJ$157.70
List Price:  FJ$225.30
You save:  FJ$67.59
Q542.62
List Price:  Q775.21
You save:  Q232.58
GY$14,613.08
List Price:  GY$20,876.73
You save:  GY$6,263.64
ISK kr9,792.30
List Price:  ISK kr13,989.60
You save:  ISK kr4,197.30
DH706.05
List Price:  DH1,008.69
You save:  DH302.63
L1,239.86
List Price:  L1,771.31
You save:  L531.44
ден4,010.92
List Price:  ден5,730.13
You save:  ден1,719.21
MOP$562.15
List Price:  MOP$803.11
You save:  MOP$240.95
N$1,302.54
List Price:  N$1,860.85
You save:  N$558.31
C$2,571.43
List Price:  C$3,673.63
You save:  C$1,102.20
रु9,317.58
List Price:  रु13,311.40
You save:  रु3,993.82
S/262.81
List Price:  S/375.46
You save:  S/112.65
K268.53
List Price:  K383.63
You save:  K115.10
SAR262.51
List Price:  SAR375.03
You save:  SAR112.52
ZK1,879.71
List Price:  ZK2,685.42
You save:  ZK805.70
L324.19
List Price:  L463.14
You save:  L138.95
Kč1,629.65
List Price:  Kč2,328.17
You save:  Kč698.52
Ft25,373.17
List Price:  Ft36,248.95
You save:  Ft10,875.77
SEK kr758.75
List Price:  SEK kr1,083.98
You save:  SEK kr325.22
ARS$61,468.94
List Price:  ARS$87,816.53
You save:  ARS$26,347.59
Bs482.36
List Price:  Bs689.12
You save:  Bs206.75
COP$272,946.91
List Price:  COP$389,940.87
You save:  COP$116,993.96
₡35,623.88
List Price:  ₡50,893.45
You save:  ₡15,269.56
L1,732.95
List Price:  L2,475.75
You save:  L742.80
₲523,151.84
List Price:  ₲747,391.81
You save:  ₲224,239.96
$U2,683.09
List Price:  $U3,833.15
You save:  $U1,150.06
zł281.85
List Price:  zł402.67
You save:  zł120.81
Already have an account? Log In

Transcript

The fifth most cute question is how to split a string in Java and that has more than 3.6 million views. The use case of it is very usual. So you get one single string for example, and phone number and you want to split it into different parts into different strings. So you want to extract the language number and so on. Or you get an email address as one string and you want to to extract the provider the language, the last two characters and or the name and so on. So you get one string and you want to split it into different strings.

In Java, there is one main method for this For this approach, or for this issue, and it is located within the string class itself, and the method is called split. And as you can see, it's an instance method. So you call it on a special instance of string. And you give it as paramita, you get a regular expression. And this regular expression describes how to split the string on which instance you call the method. and recite of the splitting is returned by an string array with the different parts in it of after the splitting.

So let's have a look how it works. So first of all, we are using Python class here. With an email pattern, so it's a regular expression describing an email address the look of an email address and the source of this regular expression as to why am I using the pattern? I want just to show you how it could work. I, I first check before I split the string, I first check if my string my given string matches the regular expression of an email address. So if you want to split an email address, maybe it is it is.

Yeah, it is good for you. If you know how to first how to check, do I have an email address here? Is it or does my given string match the pattern of email address? So yeah, you Before you split, maybe you want to take a look if the given string matches the pattern. So if you do so, you could use the pattern class. My email address that I want to split is start or Yeah, it's stored in the variable string s. And what I am doing here is I have my pattern instance with regular expression is case insensitive.

It's a very nice class to describe patterns. And then I can call matcher and gift the match on my string. Metra itself. It's a it's an own class. Let's have a look. pattern.

I don't want to use shortcuts. So I go, go nice. gate OpenType and Java Java util regex pattern. And if you are calling the match, then you get meta class. And yeah, the pattern itself has some regular expression, the end The end you check if the input matches the regular expression and to do so you get a match for instance. And on this match for instance, you can call for example, find attempts to find the next subsequence of the input sequence that matches the pattern.

So, yeah maybe you have in string given with different email addresses and you You can use them the pattern for email addresses. You pass the string with several email addresses in, you get matcher. And then you can call on this match or find and you get Boolean True, true true, as long as you have different email addresses and so on. Yeah, so this is how you could use the matcher. But we want to take a look how to split a string in here. So we do find that so the pattern of regular expression and my given string is okay, it matches.

So we are in here. And then I call the split method on my given string s. And this is a regular expression. I don't want to explain the regular expression is here. It's very true. And very complex as you can see above, but let me tell you, in this case I am splitting only on the character at. So, the brackets here means character all right and if I, if I do so, I split on the at sign, I get to first part and the second part has reside.

So, let's have a look here is the one at the system out print line and D recites one one most among enter second gmail.com. So, as a second try, I am using two different characters split at the at sign or at the dot sign. So, a dot character so, If we do so, we get s resized for different parts, the first part would be hands hands to second one most someone to then to split us with the at sign, then g may then come You can see it here. And you can also use or another approach, not using the string split method is the pattern class itself as also a state method. Let's take a quick look. Quick, hardline, split different, different things, different methods.

And yeah, it works exactly the same like like the splits class on string, you get you pass input and to get string array out of it. So yeah, we have our email address pattern here. Ah, no, not the email address pattern. But we we make a new pattern with by invoking the compile method and the ad. So we our pattern is now only one regular expression with the Add sign. And on this, I can input my string and it is this string is splitted with this regular expression given here, so yeah, we split the same way, like here above, with the Add sign.

And the recite has two elements and small salmon and gmail.com. Yeah, so that's how you split a string. It's very simple. If you want to split easy things like only add sign or something like this, but as you can see, you can pass regular expressions, regular expressions, it says it's very complex and sometimes annoying issue. So and yeah, it's very, very powerful the method and you can with pet on with Macha and so on you can make very, very interesting and crazy things. Alright, that's it for this question.

So let's see us in the next question.

Sign Up

Share

Share with friends, get 20% off
Invite your friends to LearnDesk learning marketplace. For each purchase they make, you get 20% off (upto $10) on your next purchase.