Loading...
tishkata86 avatar tishkata86 14 Точки

Java Exam 19 June Problem 03.Cubic's Message Regex

Здравейте доста време си играх на изпита да намеря правилен регекс на задача и все не успявах, нулевите минават, a другите не. Накрая седнах  в нас днес и реших да я пробвам без регекс и за има няма 20 мин я реших и ми даде 100 точки, при което изпаднах в ...., но не е там въпроса. Исках да попитам ако някой я е решил с регекс моля да покаже регекса за тази задача, защото ми е интересно какъв ще е той. Благодаря предварително. Ето го и решението без регекс: http://pastebin.com/RDvTqNzg

Тагове:
2
Java Web Development 21/06/2016 00:01:49
stellastoyanova avatar stellastoyanova 26 Точки

Здравей,

Реших задачата с ето този регекс - ^\\s*(\\d+)([a-zA-Z]{%d}) - намирам съобщението и числата пред него, но понеже не успях да измисля как да проверя дали има букви след това със самия регекс, правя отделна проверка. Ето цялото решение: http://pastebin.com/nWkp0A85

2
IskrenPenev avatar IskrenPenev 177 Точки

Здравей,

на изпита използвах този регекс ^([0-9]+)([a-zA-Z]+)([^a-zA-Z]*)$".  Хваща началото на стринга, след това първата група лови само числа, втората група улавя самото съобщение, а третата група всичко след съобщението (всичко без букви). С знака $  накрая се уверяваш че третата група е хванала края на стринга и си 100% сигурен че няма други букви освен самото съобщение.

Това е залото ми решение: https://gist.github.com/iskren-penev/d3ead2f8131eb30a8191bc82c6a5d049

2
tishkata86 avatar tishkata86 14 Точки

Благодаря Ви много! И аз пробвах в нас с един регекс същия като на Iskren, но пак не ми се получаваше въпреки че наистина този регекс си работеше като хората и явно съм обърквал нещо после в раздробяването :/ Благодаря все пак.

0
AntonPortenov avatar AntonPortenov 102 Точки

Здравей, това е регекса  , който използвах на изпита.

String regex = "(^[0-9]+[A-Za-z]{" + textSize + "}[\\W\\d]*$)";

 

променливата textSize е патерна от брой букви, който ни сеподаваше

1
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.