有没有人知道为什么
expr "4" : '-\?[0-9]\+$'
在Mac OS X上返回0,在Linux上返回1?
事实:Mac使用BSD expr Linux使用GNU
抱歉,我最初打字
expr "4" : '-\?[0-9]+$'
答案 0 :(得分:2)
public class PreferenceHelper {
private final String PREF_NAME = "Testing_xyz";
private SharedPreferences app_prefs;
//For Testing
public static final String NEW_TESTING_PIC_ID = "testing";
private Context context;
public PreferenceHelper(Context context) {
app_prefs = context.getSharedPreferences(PREF_NAME,
Context.MODE_PRIVATE);
this.context = context;
}
public void new_putMultipleProfileData(String got_multiple_json_data){
AppLog.Log("new_data_80503","got_multiple_json_data "+got_multiple_json_data);
Editor editor=app_prefs.edit();
editor.putString(NEW_TESTING_PIC_ID, "hello");
editor.commit();
}
public String new_getMultipleProfileData(){
AppLog.Log("new_data_80503","new_getMultipleProfileData "+app_prefs.getString(NEW_TESTING_PIC_ID,"0"));
return app_prefs.getString(NEW_TESTING_PIC_ID,"0");
}
采用基本的正则表达式,而不是扩展的正则表达式。 (有关每个的定义,请参阅http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap09.html。)
基本正则表达式不支持expr
和?
运算符;你需要改用边界。
+
使用?
(0到1次出现)\{0,1\}
使用+
(1次或更多次出现) GNU \{1,\}
似乎允许它们作为扩展名进行转义。
以下是一个可以在任何符合POSIX标准的expr
实现中使用的便携式调用:
expr