How do i use regular expressions effectively for parsing my text?

Hello,
I am currently using regular expressions for parsing my text. The pattern is:
pattern = 'red(dy|dish)?'
regexp(text,pattern,'match')
the answer is reddy, reddish, red. However the pattern recognizes red in words like predominantly , predetermined etc. I do not want this to happen. I want the regular expressions to only return words which describe color red (example red, reddy, reddish). How do i change my pattern or regular expression accordingly? Any help in this regard would be highly appreciated.
Thanks, Phani

 채택된 답변

Andrei Bobrov
Andrei Bobrov 2013년 6월 19일
편집: Andrei Bobrov 2013년 6월 24일
try:
pattern = '\<red(dy|dish)?\s'
ADD
pattern = '\<red(d)?(y|ish)?\>'

추가 답변 (3개)

Azzi Abdelmalek
Azzi Abdelmalek 2013년 6월 19일
편집: Azzi Abdelmalek 2013년 6월 19일
text='red redy predominant red ade redish red vrd redishh'
pattern='(?<=\s)red(y|ish)?(?!\S)'
regexp([' ' text],pattern,'match')
Phanichin
Phanichin 2013년 6월 20일

0 개 추천

Thank you Andrei and Azzi. Both the solutions are working. I cannot distinguish between these two though.

댓글 수: 2

They are different solutions and giving different results
Hello Azzi,
Yes they are different. I tried it just now. Your solution is better. However i am having a problem. When i have text like
text = 'red, redish redy' pattern='(?<=\s)red(y|ish)?(?!\S)' regexp([' ' text],pattern,'match')
the output is only 'redish' 'redy' there is no red in the output. This is the case when the text = 'redish, red redy' . The output in this case is 'red' 'redy' there is no redish. How do i resolve this?
Regards, Phani

댓글을 달려면 로그인하십시오.

Phanichin
Phanichin 2013년 6월 24일

0 개 추천

Hello Azzi,
Yes they are different. I tried it just now. Your solution is better. However i am having a problem. When i have text like
text = 'red, redish redy' pattern='(?<=\s)red(y|ish)?(?!\S)' regexp([' ' text],pattern,'match')
the output is only 'redish' 'redy' there is no red in the output. This is the case when the text = 'redish, red redy' . The output in this case is 'red' 'redy' there is no redish. How do i resolve this?
Regards, Phani

카테고리

제품

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by