1
Pls는 다음 DFA http://i.stack.imgur.com/iH3RM.png는
이 JFLAP 통해 생성 된 참조 스칼라에 jflap 정규식을 사용하려고합니다. 내가 정규식으로 변환 할 때, JFLAP을 제공합니다
p+(q+pq)(pq)*(λ+p)
내가 스칼라 REPL에 붙여 넣을 때 :
scala> val regex = "p+(q+pq)(pq)*(+p)".r
java.util.regex.PatternSyntaxException: Dangling meta character '+' near index 14
p+(q+pq)(pq)*(+p)
^
at java.util.regex.Pattern.error(Unknown Source)
나는 두 가지 간단한 질문이 있습니다.
올바른 정규식인가요? 왜 λ를 포함합니까?
repl에 붙여 넣을 때 λ가 올바르게 표시되지 않으므로 어떻게 스칼라에서 사용합니까?
와우 감사합니다. 나는 +를 |로 대체하려고 시도했으며, 아래는 완벽하게 작동합니다. (p | pq) * (| p) .r regex : scala.util.matching.Regex = p | (q | pq) * (| p) scala> val regex = "p | –