我收到以下错误消息
ABD:EveryShipout 初始化宏 几何学驱动程序:自动检测 几何学检测到的驱动程序:pdftex 没有文件 main.bbl。
! LaTeX 错误:数组 arg 中的非法字符。
请参阅 LaTeX 手册或 LaTeX Companion 了解解释。输入 H 可立即获得帮助。...
l.29 \begin{tabular}{|l|c{4cm}|}
\documentclass[12pt]{book}
\usepackage[french]{babel}
\usepackage{qtree}
\usepackage{adjustbox}
\usepackage[activate={true,nocompatibility},final,tracking=true,kerning=true,spacing=true,factor=1100,stretch=10,shrink=10]{microtype}
\usepackage{multicol}
\setlength{\unitlength}{1cm}
\input{structure.tex}
\hypersetup{pdftitle={Title},pdfauthor={Author}}
\begin{document}
\begin{tabular}{|l|c{4cm}|}
\hline
Classe de caractère & Siginification\\
\hline
[abc$^\wedge$] & Un unique caractère qui peut être a, b ou c \\
\hline
$[^abc]$ & Le $^\wedge$ exprime la négation : cette classe représente un unique caractère, \tabularnewline qui peut prendre toutes les valeurs, sauf a, b et c\\
\end{tabular}
\end{document}
根据 muzimuzhi 和 David Carlisle 所写的内容,新代码如下:
\documentclass[12pt]{book}
\usepackage[french]{babel}
\usepackage{qtree}
\usepackage{adjustbox}
\usepackage[activate={true,nocompatibility},final,tracking=true,kerning=true,spacing=true,factor=1100,stretch=10,shrink=10]{microtype}
\usepackage{multicol}
\usepackage{array}
\setlength{\unitlength}{1cm}
\input{structure.tex}
\hypersetup{pdftitle={Title},pdfauthor={Author}}
\begin{document}
\begin{tabular}{|l|wc{4cm}|}
\hline
Classe de caractère & Siginification\\
\hline
[abc$^\wedge$] & Un unique caractère qui peut être a, b ou c \\
\hline
$[^abc]$ & Le $^\wedge$ exprime la négation : cette classe représente un unique caractère, \tabularnewline qui peut prendre toutes les valeurs, sauf a, b et c\\
\end{tabular}
\end{document}
新的错误信息是:
ABD:EveryShipout 初始化宏 几何学驱动程序:自动检测 几何学检测到的驱动程序:pdftex 没有文件 main.bbl。
! 包数组错误:使用了非法的前导标记(w):‘c’。
请参阅数组包文档以了解解释。键入 H 可立即获得帮助。...
l.18 \begin{tabular}{|l|wc{4cm}|}
在 Js bibra 回答之后,我得到了以下代码和如下图所示的渲染:
[![\begin{tabular}{lp{4cm}}
\toprule
Classe de caractère & Signification\\
\midrule
\[abc$^\wedge$\] & Un unique caractère qui peut être a, b ou c \\
\midrule
$\[^abc\]$ & Le $^\wedge$ exprime la négation: cette classe représente un unique caractère, \tabularnewline qui peut prendre toutes les valeurs, sauf a, b et c\\
\midrule
$\[a-zA-Z\]$ & Le - signifie que tous les caractères entre ses bornes sont valides. Cette classe représente un unique caractère alphabétique, minuscule ou majuscule.\\
\midrule
$\[a-gmn\]$ & Autre exemple d'union: cette classe \tabularnewline est constituée de tous les caractères compris entre a et g, du caractère m et du caractère n.\\
\midrule
$\[a-g\[A-G\]\]$ & On peut inclure des classes les unes dans les autres. Cette classe représente un unique caractère, compris entre a et g, en minuscule ou en majuscule. Elle est équivalente à \[a-gA-G\].\\
\midrule
$ \[a-g\&\&\[c-k\]\] $ & Le signe $\&\&$ représente l'intersection. On fait donc là l'intersection entre la classe \[a-g\] et la classe \[c-k\]. Il s'agit donc de la classe \[c-g\].\\
\midrule
$\[a-g\&\&\[^\wedge cd\]\]$ & Ici on réalise l'intersection entre la classe qui représente tous les caractères de a à g, et celle qui représente tous les caractères, sauf c et d. Il reste donc a, b, e, f et g, que l'on peut aussi écrire \[abefg\] ou \[abe-g\].\\
\midrule
$\[a-z\&\&\[^m-p\]\]$ & Autre exemple: \tabularnewline ici on réalise l'intersection de tous les caractères compris entre a et z, et de tous les caractères sauf ceux compris entre m et p. Il nous reste donc \[a-lq-z\].\\
\bottomrule
\end{tabular}][1]][1]
答案1
没有c{<width>}
固定宽度的居中列的语法。
如果你的版本array
是 2.4f (2017/11/07) 或更新版本,你可以使用以下列w{<alignment>}{<width>}
类型
\begin{tabular}{|l|w{c}{4cm}|}
对于固定宽度的居中列(array
当然,这需要包)。但是,如果单元格内容比指定的宽度宽,则会出现叠印。这就是 MWE 中的表格的情况。
我建议您自己定义一个合适的段落列:
\newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}}
array
当然,这也需要包。
\documentclass[12pt]{book}
\usepackage[T1]{fontenc}
\usepackage[french]{babel}
\usepackage{array}
\newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}}
\begin{document}
\begin{tabular}{|l|C{4cm}|}
\hline
Classe de caractère & Siginification\\
\hline
[abc$^\wedge$] & Un unique caractère qui peut être a, b ou c \\
\hline
$[^abc]$ & Le $^\wedge$ exprime la négation: cette classe représente un
unique caractère, qui peut prendre toutes les valeurs, sauf a,
b et c \\
\hline
\end{tabular}
\end{document}
如果我理解你的表格正确的话,我也建议不要使用数学模式,而是逐字逐句:
\documentclass[12pt]{book}
\usepackage[T1]{fontenc}
\usepackage[french]{babel}
\usepackage{array}
\newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}}
\newcommand\code[1]{\texttt{#1}}
\begin{document}
\begin{tabular}{|l|C{4cm}|}
\hline
Classe de caractère & Siginification\\
\hline
\verb+[abc^]+ & Un unique caractère qui peut être \code{a}, \code{b} et
\code{c} \\
\hline
\verb+[^abc]+ & Le \verb+^+ exprime la négation: cette classe représente un
unique caractère, qui peut prendre toutes les valeurs, sauf
\code{a}, \code{b} et \code{c} \\
\hline
\end{tabular}
\end{document}
答案2
\begin{tabular}{lp{4cm}}
\toprule
Classe de caractère & Siginification\\
\midrule
[abc$^\wedge$] & Un unique caractère qui peut être a, b ou c \\
\midrule
$[^abc]$ & Le $^\wedge$ exprime la négation : cette classe représente un unique caractère, \tabularnewline qui peut prendre toutes les valeurs, sauf a, b et c\\
\bottomrule
\end{tabular}