我有一个文本文件具有以下格式:
characters(that I want to keep) (space) characters(that I want to remove)
Run Code Online (Sandbox Code Playgroud)
例如:
foo garbagetext
hello moregarbage
keepthis removethis
(etc.)
Run Code Online (Sandbox Code Playgroud)
所以我试图在Linux中使用grep命令只保留每行中的字符,而不包括第一个空格.我尝试过多次尝试,例如:
grep '*[[:space:]]' text1.txt > text2.txt
grep '*[^\s]' text1.txt > text2.txt
grep '/^[^[[:space:]]]+/' text1.txt > text2.txt
Run Code Online (Sandbox Code Playgroud)
试图从不同的例子拼凑起来,但我没有运气.它们都产生一个空白text2.txt文件.我是新来的.我究竟做错了什么?
*编辑:
我要保留的部分包括大写字母.因此,我希望保留所有/所有字符,并且不包括每行中的空白区域(从空白区域移除所有内容).
**编辑:
垃圾文本(我想删除)可以包含任何内容,包括空格,特殊字符等.例如:
AA rough, cindery lava [n -S]
Run Code Online (Sandbox Code Playgroud)
运行后grep -o '[^ ]*' text1.txt > text2.txt,上面的行变为:
AA
rough,
cindery
lava
[n
-S]
Run Code Online (Sandbox Code Playgroud)
在text2.txt中.(我想保留的是AA)
解决方案(由Rohit Jain提供,由beny23进一步输入):
grep -o '^[^ ]*' text1.txt > text2.txt
Run Code Online (Sandbox Code Playgroud) 我有一个活动,在那个活动上有几个按钮用数字等做不同的事情.虽然我希望能够让用户重置/(重启?)活动回到最初没有用户必须点击后退按钮或重新启动应用程序的状态.
我想创建一个重置按钮.我知道如何制作按钮本身,但我不知道如何重置活动的细节.
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.button1:
// do stuff
break;
case R.id.button2:
// do stuff
break;
case R.id.button3:
// do stuff
break;
case R.id.reset:
// what goes here?
default:
break;
}
}
Run Code Online (Sandbox Code Playgroud)
这是怎么做到的?
我目前已经设置好了,所以有几个TextViews:
单击其中一个按钮时,其中一个会更新,而单击另一个按钮不会更改它。
其他TextView显示一个数字,我希望在单击其中一个按钮时更改它们,但是当前所有TextView都是可见的,并且数字未更改。
我希望其他TextView(下面的num1-num3)最初不可见,然后当用户单击其中一个按钮时,TextView变为可见,并且它们的值通过我编写的方法进行更新。
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_name);
num1 = randNum();
num1 = alterNum(num1);
num1View = (TextView) findViewById(R.id.number1);
num1View.setText("Num1 Number: " + String.valueOf(num1));
num2 = randNum();
num2 = alterNum(num2);
num2View = (TextView) findViewById(R.id.number2);
num2View.setText("Num2 Number: " + String.valueOf(num2));
num3 = randNum();
num3 = alterNum(num3);
num3View = (TextView) findViewById(R.id.number3);
num3View.setText("Num3 Number: " + String.valueOf(num3));
// This one is always visible, the ones above should be invisible
// and appear onClick
currentNum = randNum();
myTextView = (TextView) findViewById(R.id.current_number); …Run Code Online (Sandbox Code Playgroud) 我使用内置的NumberPicker让用户选择一个数字.然后用户将点击"确定"按钮进行确认,结果操作将打开另一个活动.当用户点击"确定"按钮时,我想要用户选择的号码传递给另一个活动.我已经完成了打开新活动的按钮,我知道NumberPicker有一个getValue(),你可以通过putExtra()传递东西,但我不知道如何将它们与onClick方法结合起来.我该怎么做呢?
public class Source1 extends Activity implements View.OnClickListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_1);
...(NumberPicker code)
}
@Override
public void onClick(View v) {
int x = ((NumberPicker) v).getValue();
Intent intent = new Intent(this, Destination.class);
intent.putExtra("VarName", x);
startActivity(intent);
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的按钮的xml:
<Button
android:id="@+id/Id_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/numberPicker1"
android:layout_centerHorizontal="true"
android:onClick="methodName"
android:text="@string/Ok" />
Run Code Online (Sandbox Code Playgroud)
那是我的尝试.这是对的/需要改变的吗?我是否甚至需要按钮代码中的onClick,因为我在类中使用onClick方法?
我试图从用逗号分隔的文件中读取x,y坐标.但是,元素未正确添加到ArrayList.我在哪里错了?
ArrayList<Double> xpointArrayList = new ArrayList<Double>();
ArrayList<Double> ypointArrayList = new ArrayList<Double>();
try {
BufferedReader input = new BufferedReader(new FileReader(args[0]));
String line;
while ((line = input.readLine()) != null) {
line = input.readLine();
String[] splitLine = line.split(",");
double xValue = Double.parseDouble(splitLine[0]);
double yValue = Double.parseDouble(splitLine[1]);
xpointArrayList.add(xValue);
ypointArrayList.add(yValue);
}
input.close();
} catch (IOException e) {
} catch (NullPointerException npe) {
}
double[] xpoints = new double[xpointArrayList.size()];
for (int i = 0; i < xpoints.length; i++) {
xpoints[i] = xpointArrayList.get(i);
}
double[] ypoints = …Run Code Online (Sandbox Code Playgroud) android ×3
java ×2
arraylist ×1
arrays ×1
file-io ×1
grep ×1
regex ×1
textview ×1
visibility ×1
whitespace ×1