Ciao a tutti,
volevo sapere come data una stringa io potevo vedere se all'interno di essa era presente uno sottostringa da me cercata.
Grazie
Ciao a tutti,
volevo sapere come data una stringa io potevo vedere se all'interno di essa era presente uno sottostringa da me cercata.
Grazie
indexOf() oppure contains() ... dipende se ti serve avere l'indice della sottostringa oppure no.Originariamente inviato da mark85_159622
volevo sapere come data una stringa io potevo vedere se all'interno di essa era presente uno sottostringa da me cercata.
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Piu' che altro adesso che ci penso mi serve una procedura, ache creata da me che mi permetta di capire se c'e' una parola seguita da (. Ogni parola che segua questa regola deve essere modificata in un'altra parola:
es. int main( int argc, char **argv) ---> int main_aaa( ecc...)
E' possibile usare una combinazione di funzioni Java per risolvere questo problema.
Grazie
Certo, usando i vari indexOf(), charAt(), i metodi di Character per sapere che tipo di carattere è, ecc....Originariamente inviato da mark85_159622
Piu' che altro adesso che ci penso mi serve una procedura, ache creata da me che mi permetta di capire se c'e' una parola seguita da (. Ogni parola che segua questa regola deve essere modificata in un'altra parola:
es. int main( int argc, char **argv) ---> int main_aaa( ecc...)
E' possibile usare una combinazione di funzioni Java per risolvere questo problema.
Ma in questi casi (e visto che devi pure modificare la stringa), molto meglio usare le "espressioni regolari".
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Ho visto un esempio ma che espressione regolare devo usare.
Grazie
In sostanza data una stringa C devo individuare se all' interno di una istruzione e' presente una dichiarazione o un richiamo di funzione. Ogni funzione C e' seguita per foza da ( .
Innanzitutto bisogna vedere se ciò che devi aggiungere è fisso/noto a priori e se puoi anche "cablarlo" nel sorgente. Oppure se invece non lo sai a priori perché dipende da altro o anche dalla parola trovata.Originariamente inviato da mark85_159622
Ho visto un esempio ma che espressione regolare devo usare.
Perché o usi il replaceAll()/replaceFirst() di String, oppure devi usare le classi Pattern/Matcher in java.util.regex.
Supponi che qualunque sia la parola devi aggiungere "_pippo" sempre fisso:
codice:String s = "ciao()"; String s2 = s.replaceAll("(\\w+)\\(", "$1_pippo("); System.out.println(s2);
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Ciao,
io ho scritto una istruzione java di questo tipo
ma mi da' questo errore:NewCLine = Line.replaceAll( "main\\(", MainToName );
Perche' mi da' errore!!!j
ava.lang.IllegalArgumentException: Illegal group reference at java.util.regex.Matcher.appendReplacement(Matcher. java:725) at java.util.regex.Matcher.replaceAll(Matcher.java:82 3) at
java.lang.String.replaceAll(String.java:2201) at
Resolv.LoadCCode(Resolv.java:60) at
parser.LoadCCode(parser.java:331) at
parser.Start(parser.java:290) at
CUP$parser$actions.CUP$parser$do_action(parser.jav a:491) at
parser.do_action(parser.java:129) at
java_cup.runtime.lr_parser.parse(lr_parser.java:56 9) at
parser.main(parser.java:189)
Così mi sembra tutto corretto (sia come sintassi Java, sia per la forma della regex). MainToName è un String e cosa contiene??Originariamente inviato da mark85_159622
io ho scritto una istruzione java di questo tipo
NewCLine = Line.replaceAll( "main\\(", MainToName );
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
NameOfFile e' un parametro della FunzioneString MainToName = NameOfFile + "(";