Loading [MathJax]/jax/output/CommonHTML/config.js
社区首页 >问答首页 >通过部分匹配收回?

通过部分匹配收回?
EN

Stack Overflow用户
提问于 2020-12-06 12:26:32
回答 1查看 53关注 0票数 2

有没有办法通过部分匹配来收回子句。假设我有以下语法:

代码语言:javascript
代码运行次数:0
复制
s3-->[a, b, r, a].
s4-->[a, b].
s5-->s4, s4.

如何删除以's‘开头的所有子句?

代码语言:javascript
代码运行次数:0
复制
exists(Prefix, Max, X) :- between(1,Max,I), atom_concat(Prefix,I,X),current_predicate(X/2).
exists(X) :- exists('s', 10, X).

clean :- findall(X,(exists(X), abolish(X/2)), R).
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-12-08 12:59:05

Sten,您正在寻找谓词,以便通过具有名称约束的所有谓词进行回溯。在swi_prolog中,它是current_predicate家族。

代码语言:javascript
代码运行次数:0
复制
look_for_s_predicates :-
    current_predicate(PredicateName, P),  
    atom_chars(PredicateName, [s|_]),
    \+ predicate_property(P, built_in), /*ignore built-ins*/
    write(PredicateName), nl, fail.
look_for_s_predicates. 

编辑:在current_predicate中添加P,允许忽略以's‘开头的内置谓词。

在上面的示例中,我将谓词限制为以s开头的谓词。

代码语言:javascript
代码运行次数:0
复制
s1(a,b,c) :- test(a,b).
s2(a,b,c).
test(a,b).

查找_s_谓词/0将列出s1和s2。如果你愿意,现在你可以收回它们。

我回答你的问题了吗?

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65172748

复制
相关文章
android开关按钮
刚开始接触开关样式的按钮是在IOS系统上面,它的切换以及滑动十分帅气,深入人心。 所谓的开关按钮,就是只有2个状态:on和off,下图就是系统IOS 7上开关按钮效果。 起初我在android上我只会使用CheckBox去满足对应的功能。后来,查看开发文档发现,android也有了自己的原生态开关控件,并且在4.0版本中又优化加入了新的类似控件--Switch控件,以及使用起来十分简单的ToggleButton,可是它们只是带有切换效果,而不带有滑动切换效果,并且Switch控件只支持高版本的系统,对于2.
xiangzhihong
2018/01/29
4K0
android开关按钮
Android 开关按钮
其中switch组建的 thumb:@drawable/thumb项参考自: https://blog.csdn.net/qq_34763699/article/details/54954394
圆号本昊
2021/09/24
7010
Android 开关按钮
Android实现圆角按钮、文字阴影按钮
效果图: 如果要实现圆角图片,并变色须在drawable中配置背景文件如下: <?xml version="1.0" encoding="utf-8"?> <selector xmlns:andr
圆号本昊
2021/09/24
2.1K0
Android实现圆角按钮、文字阴影按钮
Flutter创建圆圈图标按钮
我找不到任何显示如何创建IconButton类似于的圆的示例FloatingActionButton。任何人都可以建议创建一个自定义按钮的方式/需要什么FloatingActionButton吗?
徐建国
2021/09/03
1.9K0
创建没有按钮的UIAlertView
默认的,UIAlertView都有一个或者多个按钮,如果你想创建没有按钮的UIAlertView,可以使用以下的方法:
EltonZheng
2021/01/26
1.3K0
创建没有按钮的UIAlertView
为 Typecho 添加 Copy 按钮
将以下代码添加到主题 header.php 中的 标签前,本主题也可以前往 控制台 - 设置外观 - 主题自定义扩展,将它添加到 自定义 HTML 元素拓展 - 标签: head 头部 (meta 元素后)。
季春二九
2023/03/22
1.6K0
为wordpress添加google+按钮
作者:matrix 被围观: 1,093 次 发布时间:2013-09-10 分类:Wordpress 兼容并蓄 | 无评论 »
HHTjim 部落格
2022/09/26
5170
为wordpress添加google+按钮
[UWP]创建一个进度按钮
传统上UWP上处理进度可以这样实现,首先是XAML,包括一个ProgressBar和一个按钮:
dino.c
2019/01/18
9330
[UWP]创建一个进度按钮
android应用程序_chrome Android
最近在看Android源码Setting代码的时候,发现其中配置都是用的PreferenceFragment,以前对这一块不是很了解,
全栈程序员站长
2022/10/04
5110
android应用程序_chrome Android
【Android 应用开发】Android - 按钮组件详解
-- CSDN :  http://download.csdn.net/detail/han1202012/6852091
韩曙亮
2023/03/27
1.2K0
【Android 应用开发】Android - 按钮组件详解
Android应用程序中的多个Activity的显示创建和调用[通俗易懂]
http://download.csdn.net/detail/u011936142/7429455
全栈程序员站长
2022/07/08
1.5K0
Android应用程序中的多个Activity的显示创建和调用[通俗易懂]
android仿ios开关按钮
前一段时间在做项目的时候遇到了一个问题,美工在设计的时候设计的是一个iPhone中的开关,但是都知道Android中的Switch开关和IOS中的不同,这样就需要通过动画来实现一个iPhone开关了。 通常我们设置界面采用的是PreferenceActivity package me.imid.movablecheckbox;   import android.os.Bundle;   import android.preference.PreferenceActivity;   p
xiangzhihong
2018/01/29
1.9K0
Android之复合按钮CompoundButton[通俗易懂]
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/133919.html原文链接:https://javaforall.cn
全栈程序员站长
2022/07/20
1.1K0
android让返回按钮失效
先发制人,后发制于人。——《汉书》 我们可以重写Activity中的onBackPressed方法去实现 例如 ...就是这样
阿超
2022/08/16
1K0
android让返回按钮失效
为世界构建应用程序
在155个国家和40多种语言中增长您的业务, 并帮助世界各地的用户轻松地发现和下载您的应用程序。
iOSDevLog
2018/07/25
9300
印度技术学院为AI、ML创建应用程序以解决工程问题
印度技术学院(IIT)的Madras研究人员已经开发出算法,可以在人工智能、机器学习和深度学习等新技术中解决工程问题。研究人员将在一个公司中部署其名为“ AISoft”的AI软件,以解决热管理、半导体、汽车、航空航天和电子冷却应用等领域的工程问题。
AiTechYun
2019/11/01
4670
印度技术学院为AI、ML创建应用程序以解决工程问题
❤️【Android精进之路-03】创建第一个Android应用程序竟然如此简单❤️
上一篇文章我们介绍了Android Studio的安装以及Android SDK的目录结构。这篇文章将介绍如何使用Android Studio创建第一个Android应用,重点介绍Android Studio的目录结构。
玖柒的小窝
2021/09/20
7360
❤️【Android精进之路-03】创建第一个Android应用程序竟然如此简单❤️
VBA使用API_04:创建按钮
前面创建了窗体,窗体有了,一般我们还会添加一个按钮来执行程序,在前面创建了窗体的基础上,再使用API创建按钮就比较简单,只要在创建了窗体之后、显示之前再添加代码创建按钮。
xyj
2020/07/28
1.5K0
VBA使用API_04:创建按钮
【Visual Studio 2019】创建 MFC 桌面程序 ( 安装 MFC 开发组件 | 创建 MFC 应用 | MFC 应用窗口编辑 | 为按钮添加点击事件 | 修改按钮文字 | 打开应用 )
打开 Visual Studio Installer , 然后选择 修改 Visual Studio 2019 , 弹出如下对话框 , 选择 " 使用 C++ 的桌面开发 " , 然后打开右侧的 " 使用 C++ 的桌面开发 " 选项卡 , 勾选 " "
韩曙亮
2023/03/29
6.8K0
【Visual Studio 2019】创建 MFC 桌面程序 ( 安装 MFC 开发组件 | 创建 MFC 应用 | MFC 应用窗口编辑 | 为按钮添加点击事件 | 修改按钮文字 | 打开应用 )
点击加载更多

相似问题

为android应用程序创建类似snapchat的按钮

10

Android应用程序:创建静音按钮

14

为android应用程序创建缓存

32

为android应用程序创建webservice

31

为网站创建Android应用程序

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文