Author Topic: Algunos ejemplos con RexExp en Groovy  (Read 567 times)

chuidiang

  • Administrator
  • Hero Member
  • *****
  • Posts: 5456
  • Karma: 12
    • View Profile
    • Apuntes de programación
Algunos ejemplos con RexExp en Groovy
« on: Abril 05, 2017, 04:27:22 am »
Unos ejemplillos de prueba con expresiones regulares en groovy

Code: [Select]
        // Contiene el patrón
        assert "abc" =~ /b/

        // Coincide exactamente con el patrón
        assert 'abc' ==~ /abc/
        assert ! ('abc' ==~ /b/ )

        // Empieza y acaba por la misma letra
        assert 'aba' ==~ /(.)b\1/
        assert ! ('abc' ==~ /(.)b\1/)

        // Extraer las coincidencias con el patrón
        def matcher = 'abc ebf' =~ /.b./
        matcher.each {
            println it
        }

        // extraer trozos del patrón que nos interesen
        matcher = 'abc ebf' =~ /(.)b(.)/
        matcher.each {
            println "In ${it[0]}, I found ${it[1]} and ${it[2]}"
        }

        // Definir el Patter primero.
        def pattern = ~/abc/
        assert ! pattern.matcher('b').matches()
        assert pattern.matcher('abc').matches()

        // switch case con patrones
        switch ('abc'){
            case ~/a/ :
                println "No"
                break;
            case ~/abc/:
                println "Yes"
                break;
            case ~/c/:
                println "No"
                break;
            default:
                println "Default"
        }
    }
}

 

ey