Ant regex para nombres de paquetes android

En mi proyecto androide todos mis archivos de vista .java importan el archivo R basado en el nombre del paquete actual. Cuando cambio el nombre de mi paquete en el Manifiesto de Android (dinámicamente, no refactorizando vía Eclipse o cualquier otro IDE), necesito las referencias de todos mis archivos java para señalar al nuevo archivo R que se genera

Estoy haciendo un script de construcción a través de Ant, pero no estoy seguro de cómo sería la convención de expresión regular

Las cadenas que necesitan ser reemplazadas tienen este aspecto:

import com.mysite.myapp.R;

es decir.

import com.sushiroll.california.R

Esto es lo que tengo en mi script de construcción de hormigas

 <replaceregexp file="src/*" match="import*.R" replace="import ${current.package}.R" byline="true"> <fileset dir="src/."> <include name="*.java"/> </fileset> </replaceregexp> 

Donde quiero que coincida con todas las cadenas que dicen import y terminar en .R

Y reemplácelo por import $current.package}.R

¿Cómo diría eso para la hormiga regex? El partido y el reemplazo que escribí eran sólo conjeturas

2 Solutions collect form web for “Ant regex para nombres de paquetes android”

Es necesario agrupar los caracteres de nombre de paquete antiguo antes de .R

Si sabe el nombre del paquete

  match="import com\.mysite\.myapp\.R;" 

Si ya sabes el nombre del paquete, pero prepárate para ser reprobado por importaciones erróneas si importas R de diferentes paquetes

  match="import (.*).R;" 

reemplazar a

replace="import ${current.package}.R;"

y el

  <fileset dir="src"> <include name="**/*.java"/> </fileset> 
 <replaceregexp match="import .+?\.R;" replace="import ${current.package}.R;" flags="g" > ... 

Donde +? Es necesario para que funcione si tiene dos importaciones en una línea, y g necesita por lo que no sólo se importa una importación por archivo. Aunque actualmente sólo tiene uno por archivo, ya que reemplazar todos ellos con la misma cadena, este es el regexp universalmente correcto …

  • Cómo utilizar SpannableString con Regex en android?
  • Formato de registro de registro de Android c2dm
  • División de una cadena en Java lanza PatternSyntaxException
  • Android / Java Regex para eliminar ceros adicionales de sub-cadenas
  • RegEx para encontrar URL en HTML tarda 25 segundos en Java / Android
  • ¿Cuál sería una simple expresión regular para la comprobación de contraseña durante la suscripción?
  • Matcher.replaceAll () y String.replaceAll () no parecen funcionar en Galaxy S 6
  • ¿Cómo puedo crear una expresión regular para esto en android?
  • Palabra árabe Buscando en el archivo de texto en árabe
  • Expresión regular para eliminar todos los caracteres no imprimibles
  • Cómo utilizar la expresión regular en android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.