Filter löschen
Filter löschen

Href hyperlink, how to escape double quotes " ?

27 Ansichten (letzte 30 Tage)
covfefe
covfefe am 20 Jun. 2022
Bearbeitet: Jan am 22 Jun. 2022
How can I escape double quotes when displaying a hyperlink in matlab?
Example:
I want to create a hyperlink to execute this command:
[cmd_status cmd_return] = system('explorer.exe /select, "C:\My folder\My file" ')
Without double quotes, the relevant hyperlink is:
disp('<a href="matlab:system(''explorer.exe /select, C:\My folder\My file'');">Click Here</a>')
However, nothing I tried ("", \", '", ...) worked (it has to be double quotes, windows CMD does not accept anything else)
Thank you
  2 Kommentare
Walter Roberson
Walter Roberson am 20 Jun. 2022
Bearbeitet: Walter Roberson am 21 Jun. 2022
try coding
&quot;
in place of each double quote that is being escaped
covfefe
covfefe am 21 Jun. 2022
I don't this this is working
disp(['<a href="matlab:system(''explorer.exe /select, &quot;C:\My folder\My file&quot;'');">Click Here</a>'])
does not convert the &quot; to ", leaving windows unable to execute the command

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Fangjun Jiang
Fangjun Jiang am 20 Jun. 2022
Bearbeitet: Fangjun Jiang am 21 Jun. 2022
knowing
double('"')
ans = 34
char(34)
ans = '"'
This leads to the following, which works out properly
disp('<a href="matlab:system([''explorer.exe /select, '',char(34),''c:\My Folder\My File'',char(34)] );">Click Here</a>')
  5 Kommentare
covfefe
covfefe am 21 Jun. 2022
Thanks @Fangjun Jiang. I know this is an option, I was hoping for a cleaner solution. Surely there has to be a way to escape the quotes, right?
Fangjun Jiang
Fangjun Jiang am 21 Jun. 2022
Ha! this works out
disp('<a href="matlab:system([''explorer.exe /select, '',char(34),''c:\My Folder\My File'',char(34)] );">Click Here</a>')

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Jan
Jan am 21 Jun. 2022
Bearbeitet: Jan am 22 Jun. 2022
I'm curious:
% [UNTESTED] [TYPO FIXED]
disp(['<a href="matlab:system(', ...
'strrep(''explorer.exe /select, $C:\My folder\My file$'', ''$'', char(34));">Click Here</a>')
Fanjung's idea:
% [UNTESTED]
disp('<a href="matlab:myExplorer(''C:\My folder\My file'');">Click Here</a>')
function myExplorer(File)
system(sprintf('explorer.exe /select, "%s"');
end
  1 Kommentar
covfefe
covfefe am 21 Jun. 2022
Thanks, this one works too. (there was a typo, correct syntax is:)
disp(['<a href="matlab:system(strrep(''explorer.exe /select, $C:\My folder\My file$'', ''$'', char(34)));">Click Here</a>'])

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu MATLAB finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by