如何取得名稱中使用的最後一個部分編號?

如何取得名稱中使用的最後一個部分編號?

我正在寫一些包含許多章節的筆記。在此文件的每個部分的末尾,我想插入一個標題如下的練習清單:

Problems - Section x.y (x = chapter, y = section)

\begin{exercise}
blah blah blah
\end{exercise}

我可以使用 \label 命令來完成此操作,例如

     \section{NameSection}\label{secx.y}

bla bla bla


     Problems - Section \ref{secx.y}
        
        \begin{exercise}
        blah blah blah
        \end{exercise}

有沒有辦法使用 \lastchapter.section 或 \current.chapther.section 等指令而不是 \ref{secx.y} ?

我正在使用超連結。

\documentclass[a4paper, 12pt]{report}
\usepackage{mathpazo, amsmath,amsfonts,amscd,bezier, amssymb, ifthen,amsthm}
\usepackage[x11names, usenames,svgnames,dvipsnames, table]{xcolor}
\RequirePackage[babel=true]{microtype}
\usepackage{babel}
\usepackage[utf8]{inputenc}
\usepackage{enumerate}
\usepackage[shortlabels]{enumitem}
\usepackage{multicol}
\usepackage{multirow}
\usepackage{tasks}
\usepackage{graphicx}
\usepackage{float}
\usepackage[margin=1.5cm ]{geometry}
\usepackage[most]{tcolorbox}
\usepackage{indentfirst}
\usepackage{eqparbox, ulem}
\usepackage{lipsum}
\usepackage[colorlinks=true]{hyperref}
\hypersetup{allcolors=magenta}

\everymath{\displaystyle}

\newcounter{theeq} 
\counterwithin{theeq}{chapter}
\setcounter{theeq}{0}

\newcommand{\eq}{ 
    \
    
    \noindent 
    \refstepcounter{theeq}\textbf{\thechapter.\arabic{theeq}}. }
%%%%%%%%%%%%%%%%%
\begin{document}

\chapter{test1}
\lipsum[2]

\section{test1.1}\label{test1.1}
\lipsum[3]

\begin{center}
    \Large{Problems - Section \ref{test1.1}}
\end{center}

\eq Let \(x \in R\)

\eq xx

\section{test1.2}\label{test1.2}
\lipsum[3]

\begin{center}
    \Large{Problems - Section \ref{test1.2}}
\end{center}

\eq Let \(x \in R\)

\eq xx

\section{test1.3}\label{test1.3}
\lipsum[3]

\begin{center}
    \Large{Problems - Section \ref{test1.3}}
\end{center}

\eq Let \(x \in R\)

\eq xx


\chapter{test2}
\lipsum[3]

\section{test2.1}\label{test2.1}

\begin{center}
    \Large{Problems - Section \ref{test2.1}}
\end{center}

\eq Let \(x \in R\)

\eq \(\lim_{x\to 0} \frac{1}{x}\)

\chapter{test3}

\section{test3.1}\label{test3.1}

\begin{center}
    \Large{Problems - Section \ref{test3.1}}
\end{center}

\eq Let \(x \in R\)

\eq xx

\end{document}
                    

答案1

這將在一次運行中起作用。您幾乎可以將任何內容放入文字條目中。

它可能並不總是適用於section.\thesection,具體取決於如何\thesection定義。如果您查看下面的 aux 文件,\contentsline您將找到錨點名稱section.1.1(例如)。這就是您需要重現的內容\hyperlink

\documentclass[a4paper, 12pt]{report}
\usepackage{mathpazo, amsmath,amsfonts,amscd,bezier, amssymb, ifthen,amsthm}
\usepackage[x11names, usenames,svgnames,dvipsnames, table]{xcolor}
\RequirePackage[babel=true]{microtype}
\usepackage{babel}
\usepackage[utf8]{inputenc}
\usepackage{enumerate}
\usepackage[shortlabels]{enumitem}
\usepackage{multicol}
\usepackage{multirow}
\usepackage{tasks}
\usepackage{graphicx}
\usepackage{float}
\usepackage[margin=1.5cm ]{geometry}
\usepackage[most]{tcolorbox}
\usepackage{indentfirst}
\usepackage{eqparbox, ulem}
\usepackage{lipsum}
\usepackage[colorlinks=true]{hyperref}
\hypersetup{allcolors=magenta}

\everymath{\displaystyle}

\newcounter{theeq} 
\counterwithin{theeq}{chapter}
\setcounter{theeq}{0}

\newcommand{\eq}{ 
    \
    
    \noindent 
    \refstepcounter{theeq}\textbf{\thechapter.\arabic{theeq}}. }
%%%%%%%%%%%%%%%%%
\begin{document}

\chapter{test1}
\lipsum[2]

\section{test1.1}\label{test1.1}
\lipsum[3]

\begin{center}
    \Large{Problems - \hyperlink{section.\thesection}{Section \thesection}}
\end{center}

\eq Let \(x \in R\)

\eq xx

\section{test1.2}
\lipsum[3]

\begin{center}
    \Large{Problems - \hyperlink{section.\thesection}{Section \thesection}}
\end{center}

\eq Let \(x \in R\)

\eq xx

\section{test1.3}
\lipsum[3]

\begin{center}
    \Large{Problems - \hyperlink{section.\thesection}{Section \thesection}}
\end{center}

\eq Let \(x \in R\)

\eq xx


\chapter{test2}
\lipsum[3]

\section{test2.1}

\begin{center}
    \Large{Problems - \hyperlink{section.\thesection}{Section \thesection}}
\end{center}

\eq Let \(x \in R\)

\eq \(\lim_{x\to 0} \frac{1}{x}\)

\chapter{test3}

\section{test3.1}

\begin{center}
    \Large{Problems - \hyperlink{section.\thesection}{Section \thesection}}
\end{center}

\eq Let \(x \in R\)

\eq xx

\end{document}

相關內容