Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

How to extract a portion of a string using regular expressions in Java

Posted on 2011-03-17
13
Medium Priority
?
201 Views
Last Modified: 2012-05-11
0
Comment
Question by:Tolgar
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 5
  • 5
  • 3
13 Comments
 
LVL 86

Expert Comment

by:CEHJ
ID: 35157368
It looks like all that's happening is that you're appending

mycheck/report.html

..?
0
 

Author Comment

by:Tolgar
ID: 35157462
Yes. But in some cases I remove some portion of it like "sbtest/mylog_results.html" and in some other cases I don't need to remove.

So it is not actually just adding "mycheck/report.html" to the end of each link.

Hope this explains better

Thanks,
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 35157592
You'd have to define the rules, otherwise  it's impossible to say
0
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

 

Author Comment

by:Tolgar
ID: 35157882
You are right. Here is the rule:

This part is fixed:

http://www-internal.mywork.com/mywork/devel/sandbox/ANYTEXT/

The rest is not clear. But let me try to make a rule.

Apqr_test_mytests/glnxa64
mytests_logs/02-23-2011/glnxa64
prequal_testlog/Apqr_j123456_mytests/glnxa64/sbtest/mylog_results.html
prequal_testlog/Apqr_j123456_mytests/glnxa64/sbtest/mylog_results.html
MERGE_mytests/glnxa64_2011-02_sidCopy


From these example cases the rule is:
Note: Parathesis can be ignored. They are not part of the rule. I just used them to group parts.

http://www-internal.mywork.com/mywork/devel/sandbox/ANYTEXT/ ( 1 or many ANYTEXT/ ) ( 1 or 0 ANYTEXT.html )


Thanks,
0
 
LVL 47

Expert Comment

by:for_yan
ID: 35158124


Still, not quite clear to me what is the rule:

I see, you start from:

http://www-internal.mywork.com/mywork/devel/sandbox/ANYTEXT/ ( 1 or many ANYTEXT/ ) ( 1 or 0 ANYTEXT.html )



You are adding mycheck/report.html
 but you are removing some part, where, I guess, there is already report.

But how would one know, say,  that "/sbtest/" should also be removed?


0
 

Author Comment

by:Tolgar
ID: 35158275
You are right.

The rule that I wrote is for the match only. Now from this match I want to remove the part to the beginning of sbtest if there is any sbtest. And add mycheck/report.html

If there is no sbtest then directly add mycheck/report.html.

And from the rule I have given before, we don't know how many directories we have (ANYTEXT/) until the x.html file.

I hope it is clear now.

Thanks,
0
 
LVL 86

Accepted Solution

by:
CEHJ earned 2000 total points
ID: 35158334
The following should be OK then
int ix = 0;
if((ix =s.indexOf("/sbtest")) > -1) {
	s = s.substring(0, ix);
}
s += suffix;

Open in new window

0
 
LVL 47

Expert Comment

by:for_yan
ID: 35158335


Don't know about regular expressions, but this is how you can do it with regual java:

String s1 = s.substring(0, s.lastIndexOf("/"));
if(s1.endsWith("sbtest"))s1 = s1.substring(0,s1.lastIndexOf("/"));
s1 += "/mycheck/report.html";
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 35158597
'suffix' in my example is of course

"/mycheck/report.html"
0
 
LVL 47

Expert Comment

by:for_yan
ID: 35158656
Yes, you are right; CEHJ's is more general, I assumed that sbtest is always the last folder which contains the .html file
0
 

Author Comment

by:Tolgar
ID: 35158765
Thanks guys...
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 35158839
:)
0

Featured Post

The top UI technologies you need to be aware of

An important part of the job as a front-end developer is to stay up to date and in contact with new tools, trends and workflows. That’s why you cannot miss this upcoming webinar to explore the latest trends in UI technologies!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction This article is the last of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article covers our test design approach and then goes through a simple test case example, how …
Basic understanding on "OO- Object Orientation" is needed for designing a logical solution to solve a problem. Basic OOAD is a prerequisite for a coder to ensure that they follow the basic design of OO. This would help developers to understand the b…
This tutorial covers a practical example of lazy loading technique and early loading technique in a Singleton Design Pattern.
This tutorial covers a step-by-step guide to install VisualVM launcher in eclipse.
Suggested Courses

705 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question