Per favore aiutami a rimuovere il carattere carrello in JSLHo uno script jsl che chiama il file Python per identificare una directory specifica da qualsiasi luogo. Funziona bene ma il risultato ha un carattere da carrozza che rovina tutto.
cur_dir = Substr( Get Default Directory(), 2, 999 );
cur_dir = Substitute( cur_dir, "/", "\" );
show(cur_dir);
_path_script = cur_dir || "find_home_directory.py";
show(_path_script);
home_dir = RunProgram(
executable( "python" ),
options( _path_script),
readfunction( "text" )
);
show(home_dir);
home_dir = "C:\dtemp
";
Qualcuno, può aiutarmi a convertire questa stringa per rimuovere il carattere di trasporto e assomiglia a questa?
home_dir = "C:\dtemp"
Automazione e scriptingRi: Per favore aiutami a rimuovere il carattere di trasporto in JSLEcco come lo farei usando i caratteri di escape standard in JMP
names default to here(1);
cr = "\!r";
home_dir = "C:\dtemp
";
show(home_dir);
home_dir = substitute(home_dir, cr, "");
show(home_dir);
Che ha dato i risultati
home_dir = "C:\dtemp
";
home_dir = "C:\dtemp";
Ri: Per favore aiutami a rimuovere il carattere di trasporto in JSLsì finalmente ha funzionato. Il trucco è il seguente:
supponiamo di avere un file "example.jsl" e di volerne il percorso assoluto. Dovresti fare quanto segue:
cur_dir = Substr( Get Default Directory(), 2 );
cur_dir = Convert File Path( cur_dir, Windows );
Show( cur_dir );
_path_script = cur_dir || "find_home_directory.py";
Show( _path_script );
home_dir = Run Program( executable( "python" ), options( _path_script ), readfunction( "text" ) );
Show( home_dir );
path_to_example_jsl = Substitute( home_dir, "\r", "example.jsl" );
Show( path_to_example_jsl );
Il file python che chiami è semplice:
import os
def find_home_dir():
cur_dir = os.path.dirname(os.path.realpath(__file__))
while True:
if "file_which_defines_root" in os.listdir(cur_dir):
break
else:
cur_dir = os.path.dirname(cur_dir)
print(cur_dir.strip())
if __name__ == '__main__':
find_home_dir()
Ri: Per favore aiutami a rimuovere il carattere di trasporto in JSLForse questo?
cur_dir = Substr( Get Default Directory(), 2 );
cur_dir = Convert File Path( cur_dir, Windows );
Show( cur_dir );
_path_script = cur_dir || "find_home_directory.py";
Show( _path_script );
home_dir = Run Program( executable( "python" ), options( _path_script ), readfunction( "text" ) );
Show( home_dir );
home_dir = Substitute( home_dir, "\r", "" );
Show( home_dir );
Ri: Per favore aiutami a rimuovere il carattere di trasporto in JSLAnche se funziona se esegui queste poche righe singolarmente.
cr = "
";
home_dir = "C:\dtemp
";
show(home_dir);
home_dir = substitute(home_dir, cr, "");
show(home_dir);
Risultato:
home_dir = "C:\dtemp
";
home_dir = "C:\dtemp";
Ri: Per favore aiutami a rimuovere il carattere di trasporto in JSLL'ho provato con "(\r)" come ricerca RegEx ma continua a riscontrare lo stesso problema.
cur_dir = Substr( Get Default Directory(), 2, 999 );
cur_dir = Substitute( cur_dir, "/", "\" );
show(cur_dir);
_path_script = cur_dir || "find_home_directory.py";
show(_path_script);
home_dir = RunProgram(
executable( "python" ),
options( _path_script),
readfunction( "text" )
);
show(home_dir);
cr = Regex(home_dir,"(\r)");
home_dir = substitute(home_dir, cr, "");
show(home_dir);Risultato.
home_dir = "C:\tmp
";
home_dir = "C:\tmp
";
Quello che voglio:
home_dir = "C:\tmp"
Ri: Per favore aiutami a rimuovere il carattere di trasporto in JSLcur_dir = Substr( Get Default Directory(), 2, 999 );
cur_dir = Substitute( cur_dir, "/", "\" );
show(cur_dir);
_path_script = cur_dir || "find_home_directory.py";
show(_path_script);
home_dir = RunProgram(
executable( "python" ),
options( _path_script),
readfunction( "text" )
);
show(home_dir);
cr ="
";
home_dir = substitute(home_dir, cr, "");
show(home_dir);Il risultato è sempre lo stesso...:(
home_dir = "C:\dekel_post_processing
";
home_dir = "C:\dekel_post_processing
";
Ri: Per favore aiutami a rimuovere il carattere di trasporto in JSL@pmroz la soluzione di è buona! Ecco un riferimento generale al caratteri invisibili comuni che potrebbe apparire in una stringa di caratteri. Puoi usare la sequenza di escape per cercare.
Ri: Per favore aiutami a rimuovere il carattere di trasporto in JSLcr = "
";
home_dir = "C:\dtemp
";
home_dir = substitute(home_dir, cr, "");