假设文本文件包含以下行。
第1行:职位描述
第2行:需要编程语言:C,C ++,JAVA和python
第3行:候选人必须对嵌入式系统有很好的了解
第4行:必须具有开发设备驱动程序的经验。必须具备阅读H / W原理图的技巧
第5行:希望你申请这个职位。
当我搜索“必须”时,结果如下。第4行出现两次,因为它必须是2次。但我想只看一次。
搜索“必须”(1档中3次点击)
新3(3次点击)
第3行:候选人必须对嵌入式系统有很好的了解
第4行:必须具有开发设备驱动程序的经验。必须具备阅读H / W原理图的技巧
第4行:必须具有开发设备驱动程序的经验。 必须具备阅读H / W原理图的技巧。
你能帮帮我吗?
答案 0 :(得分:0)
找到:must(?!.*?must)
仅当must
后面没有其他must
public class PrintOddAndEven extends Thread {
static volatile int i = 1;
Object lock;
PrintOddAndEven(Object lock) {
this.lock = lock;
}
public static void main(String ar[]) {
Object obj = new Object();
PrintOddAndEven odd = new PrintOddAndEven(obj);
PrintOddAndEven even = new PrintOddAndEven(obj);
odd.setName("Odd");
even.setName("Even");
odd.start();
even.start();
}
@Override
public void run() {
while (i <= 10) {
if (i % 2 == 0 && Thread.currentThread().getName().equals("Even")) {
synchronized (lock) {
System.out.println(Thread.currentThread().getName() + " - " + i);
i++;
lock.notify();
}
}
if (i % 2 == 1 && Thread.currentThread().getName().equals("Odd")) {
synchronized (lock) {
System.out.println(Thread.currentThread().getName() + " - " + i);
i++;
try {
lock.wait();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
}
}