openregex-scala


License

License

Categories

Categories

Scala Languages
GroupId

GroupId

org.allenai.openregex
ArtifactId

ArtifactId

openregex-scala_2.11
Last Version

Last Version

1.1.3
Release Date

Release Date

Type

Type

jar
Description

Description

openregex-scala
openregex-scala
Project URL

Project URL

http://github.com/allenai/openregex-scala
Project Organization

Project Organization

org.allenai.openregex
Source Code Management

Source Code Management

https://github.com/allenai/openregex-scala

Download openregex-scala_2.11

How to add to project

<!-- https://jarcasting.com/artifacts/org.allenai.openregex/openregex-scala_2.11/ -->
<dependency>
    <groupId>org.allenai.openregex</groupId>
    <artifactId>openregex-scala_2.11</artifactId>
    <version>1.1.3</version>
</dependency>
// https://jarcasting.com/artifacts/org.allenai.openregex/openregex-scala_2.11/
implementation 'org.allenai.openregex:openregex-scala_2.11:1.1.3'
// https://jarcasting.com/artifacts/org.allenai.openregex/openregex-scala_2.11/
implementation ("org.allenai.openregex:openregex-scala_2.11:1.1.3")
'org.allenai.openregex:openregex-scala_2.11:jar:1.1.3'
<dependency org="org.allenai.openregex" name="openregex-scala_2.11" rev="1.1.3">
  <artifact name="openregex-scala_2.11" type="jar" />
</dependency>
@Grapes(
@Grab(group='org.allenai.openregex', module='openregex-scala_2.11', version='1.1.3')
)
libraryDependencies += "org.allenai.openregex" % "openregex-scala_2.11" % "1.1.3"
[org.allenai.openregex/openregex-scala_2.11 "1.1.3"]

Dependencies

compile (3)

Group / Artifact Type Version
org.scala-lang : scala-library jar 2.11.5
edu.washington.cs.knowitall : openregex jar 1.1.1
com.google.code.findbugs : jsr305 jar 2.0.1

test (4)

Group / Artifact Type Version
junit : junit jar 4.11
org.specs2 : specs2-core_2.11 jar 2.4.15
org.specs2 : specs2-scalacheck_2.11 jar 2.4.15
org.specs2 : specs2-junit_2.11 jar 2.4.15

Project Modules

There are no modules declared in this project.

OpenRegex-scala

OpenRegex is written by Michael Schmitz at the Turing Center http://turing.cs.washington.edu/. It is licensed under the Lesser GPL. Please see the LICENSE file for more details.

OpenRegex-scala provides scala bindings against OpenRegex. The Scala bindings use Scala collections as well as providing a more familiar API for Scala users.

OpenRegex-scala also includes a PatternParser implementation that uses reflection to run over any class out of the box. Any public field or 0-argument method may be used to match against a string. There is an exact string matcher (single quotes) and a regular expression matcher (forward slashes). Multiple aspects of a class can be matched against and combined with a logical expression.

    case class Point(x: Int, y: Int)
    val parser = PatternParsers.reflectionWithLogic[Point]
    val regex = parser("<x='1' | x='2'> <x='3' & y='3'>")
    regex.matches(Seq(Point(1, 1), Point(3, 3)))

Using regular expressions, the pattern could have been expressed equivalently.

    val regex = parser("<x=/[12]/> <x='3' & y='3'>")
org.allenai.openregex

AI2

Versions

Version
1.1.3