
Inline adoc files when they are included exactly once. Also fix language tags because this inlining gives us better information on what language the code is written in.
40 lines
931 B
Plaintext
40 lines
931 B
Plaintext
== Why is this an issue?
|
|
|
|
include::../description.adoc[]
|
|
|
|
|
|
=== Noncompliant code example
|
|
|
|
[source,java]
|
|
----
|
|
Pattern pattern1 = Pattern.compile("a++abc"); // Noncompliant, the second 'a' never matches
|
|
Pattern pattern2 = Pattern.compile("\\d*+[02468]"); // Noncompliant, the sub-pattern "[02468]" never matches
|
|
----
|
|
|
|
|
|
=== Compliant solution
|
|
|
|
[source,java]
|
|
----
|
|
Pattern pattern1 = Pattern.compile("aa++bc"); // Compliant, for example it can match "aaaabc"
|
|
Pattern pattern2 = Pattern.compile("\\d*+(?<=[02468])"); // Compliant, for example it can match an even number like "1234"
|
|
----
|
|
|
|
ifdef::env-github,rspecator-view[]
|
|
|
|
'''
|
|
== Implementation Specification
|
|
(visible only on this page)
|
|
|
|
=== Message
|
|
|
|
Change this impossible to match sub-pattern that conflicts with the previous possessive quantifier.
|
|
|
|
|
|
=== Highlighting
|
|
|
|
The conflicting sub-pattern after the possessive qualifier.
|
|
|
|
|
|
endif::env-github,rspecator-view[]
|