[英]ruby gsub function in java, replaceAll maybe?
我一直試圖翻譯這個
funcFormat = funcFormat.gsub(/sqrt\((.*)\)/,'Math.sqrt(\1)')
在java中
funcFormat = funcFormat.replaceAll("sqrt((.*))","Math.sqrt($1)");
或者有什么方法可以將數學格式化為文本?例如:
2x ^ 2sqrt(x ^ 3/2)到2xpow2sqrt(xpow3 / 2)
謝謝你,順便說一句,我是這個網站的新手。
您可以使用以下表達式:
funcFormat = funcFormat.replaceAll("sqrt\\(([^)]*)\\)", "Math.sqrt($1)");
雖然看起來你不需要這里的正則表達式。 一個簡單的
funcFormat = funcFormat.replace("sqrt", "Math.sqrt");
似乎也適合你的情況。
雖然給出的例子並不真正需要正則表達式,但我的確如此 。 如果你確實需要一個正則表達式,你正在尋找的方法是String.replaceAll
(正如你所提到的)。 Ruby的String#sub
對應的java版本是String.replaceFirst
。
綜上所述:
Ruby | Java
---------------------------------------------------------------------------------------
String#sub (regex, replacement) | String.replaceFirst(String regex, String replacement)
String#gsub(regex, replacement) | String.replaceAll (String regex, String replacement)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.